JP2019111057A - Game machine - Google Patents
Game machine Download PDFInfo
- Publication number
- JP2019111057A JP2019111057A JP2017246247A JP2017246247A JP2019111057A JP 2019111057 A JP2019111057 A JP 2019111057A JP 2017246247 A JP2017246247 A JP 2017246247A JP 2017246247 A JP2017246247 A JP 2017246247A JP 2019111057 A JP2019111057 A JP 2019111057A
- Authority
- JP
- Japan
- Prior art keywords
- area
- game
- program
- address
- ram
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 description 192
- 230000008569 process Effects 0.000 description 189
- 238000012545 processing Methods 0.000 description 74
- 230000006870 function Effects 0.000 description 66
- 238000001514 detection method Methods 0.000 description 41
- 230000007257 malfunction Effects 0.000 description 18
- 238000001994 activation Methods 0.000 description 17
- 230000008859 change Effects 0.000 description 13
- 230000006378 damage Effects 0.000 description 13
- 230000000694 effects Effects 0.000 description 13
- 238000012790 confirmation Methods 0.000 description 11
- 230000005856 abnormality Effects 0.000 description 8
- 239000000872 buffer Substances 0.000 description 8
- 238000012986 modification Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 8
- 230000002159 abnormal effect Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 7
- 238000003745 diagnosis Methods 0.000 description 5
- 230000004913 activation Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Slot Machines And Peripheral Devices (AREA)
Abstract
Description
本発明は、遊技を行うことが可能な遊技機に関する。 The present invention relates to a gaming machine capable of playing a game.
遊技機として、所定の賭数を設定し、スタート操作が行われたことに基づいて、複数種類の識別情報の可変表示が行われるスロットマシンや、遊技球などの遊技媒体を発射装置によって遊技領域に発射し、該遊技領域に設けられている入賞口などの始動領域に遊技媒体が入賞したときに複数種類の識別情報の可変表示が行われるパチンコ遊技機などがある。 As a gaming machine, a predetermined bet number is set, and based on the start operation being performed, a slot machine in which variable display of a plurality of types of identification information is performed, a game medium such as a game ball, etc. There is a pachinko gaming machine or the like in which variable display of a plurality of types of identification information is performed when a game medium has won in a starting area such as a winning opening provided in the game area.
この種の遊技機として、記憶領域のアドレスを特定して該特定したアドレスの記憶領域にアクセスすることによりデータを読み出す特定命令を実行するものが提案されている(たとえば、特許文献1参照)。 As this type of game machine, there has been proposed a game machine that specifies an address of a storage area and executes a specific instruction to read data by accessing the storage area of the specified address (see, for example, Patent Document 1).
特許文献1に記載の遊技機において、特定記憶領域を保護すべきときに誤作動により特定命令が発行されてしまった場合には、該特定記憶領域に意図しないアクセスが行われてしまう虞があった。 In the gaming machine described in Patent Document 1, there is a risk that an unintended access may be made to the specific storage area if the specific instruction has been issued due to a malfunction when the specific storage area is to be protected. The
本発明は、このような問題点に着目してなされたものであり、特定記憶領域に意図しないアクセスが行われてしまう可能性を低減できる遊技機を提供することを目的とする。 The present invention has been made in view of such problems, and an object of the present invention is to provide a gaming machine capable of reducing the possibility of unintended access to a specific storage area.
(1) 遊技を行うことが可能な遊技機であって、
所定記憶領域(たとえば、Qレジスタ)に記憶されたデータを用いて記憶領域のアドレスを特定し、該特定されたアドレスの記憶領域からデータを読み出す特定命令(たとえば、LDQ命令)をプログラムに基づいて実行する命令実行手段(たとえば、メイン制御部41)と、
前記プログラムで用いるデータが記憶されている特定記憶領域(たとえば、図3に示す遊技RAM領域)へのアクセスを、前記遊技機への電源供給の停止が検出されたときに禁止する(たとえば、図6に示す電断処理でのSk9においてRAM41cへのアクセスを禁止する)禁止手段(たとえば、メイン制御部41)とを備え、
前記所定記憶領域には、
前記特定記憶領域へのアクセスが禁止されるまでは(たとえば、図7のタイミングT1に示すRAMアクセスが禁止される)前記特定記憶領域のアドレスを特定するために用いられる所定値データ(たとえば、遊技RAM領域の上位アドレス「F0」を特定可能な所定値)が記憶され、
前記特定記憶領域へのアクセスが禁止されるにあたって(たとえば、RAMアクセスが禁止される前に)前記特定記憶領域とは異なる領域のアドレスを特定するために用いられる特定値データ(たとえば、遊技RAM領域とは異なる領域である内部機能レジスタの上位アドレス「F5」を特定可能な特定値)が記憶される。
(1) A gaming machine capable of playing a game,
Based on a program, a specific instruction (for example, an LDQ instruction) for specifying an address of a storage area using data stored in a predetermined storage area (for example, Q register) and reading data from the storage area of the specified address Instruction execution means (for example, the main control unit 41) to execute;
The access to the specific storage area (for example, the game RAM area shown in FIG. 3) in which the data used in the program is stored is prohibited when the stop of the power supply to the game machine is detected (for example, And 6) prohibiting access to the
In the predetermined storage area,
The predetermined value data (for example, a game) used to specify the address of the specific storage area until the access to the specific storage area is prohibited (for example, the RAM access shown at timing T1 in FIG. 7 is prohibited) A predetermined value capable of specifying the upper address "F0" of the RAM area is stored,
Specific value data (for example, game RAM area) used to specify an address of an area different from the specific storage area when the access to the specific storage area is prohibited (for example, before the RAM access is prohibited) And a specific value capable of specifying the upper address "F5" of the internal function register, which is an area different from the above.
このような構成によれば、プログラムで用いるデータが記憶されている重要な特定記憶領域へのアクセスが禁止された以降は、特定記憶領域とは異なる領域のアドレスを特定可能な特定値データが記憶される。したがって、特定記憶領域へのアクセスが禁止されている場合において、誤って特定命令が実行された場合であっても、重要な特定記憶領域にアクセスする可能性を低減できる。 According to such a configuration, after the access to the important specific storage area where the data used in the program is stored is prohibited, the specific value data which can specify the address of the area different from the specific storage area is stored Be done. Therefore, in the case where the access to the specific storage area is prohibited, the possibility of accessing the important specific storage area can be reduced even if the specific instruction is executed erroneously.
また、記憶領域(特定記憶領域、および特定記憶領域とは異なる領域を含む)のアドレスは、第1情報(たとえば、該アドレスの上位アドレス)と第2情報(たとえば、該アドレスの下位アドレス)とを含み、たとえば、第1情報は、所定記憶領域(たとえば、Qレジスタ)に記憶させておくことが好ましい。そして、特定命令では、第1情報と第2情報とからアドレスを特定し、特定したアドレスの記憶領域からデータを読み出す。この読み出しの際には、該所定記憶領域に記憶されている第1情報と、該特定命令で指定された第2情報とからアドレスを特定する。このような構成によれば、特定命令において第1情報および第2情報の双方を指定してアドレスを特定する構成と比較して、特定命令のプログラム容量を削減することができる。 In addition, the address of the storage area (including a specific storage area and an area different from the specific storage area) includes the first information (for example, the upper address of the address) and the second information (for example, the lower address of the address) For example, it is preferable to store the first information in a predetermined storage area (for example, a Q register). Then, in the specific instruction, an address is specified from the first information and the second information, and data is read out from the storage area of the specified address. At the time of this reading, an address is specified from the first information stored in the predetermined storage area and the second information specified by the specific command. According to such a configuration, the program capacity of the specific instruction can be reduced as compared with the configuration in which both the first information and the second information are specified in the specific instruction to specify the address.
(2) (1)の遊技機において、
前記特定値データは、前記遊技機への電源供給が開始されたときに初期化される領域のアドレスを特定可能なデータである(たとえば、特定値は、起動処理の前に実行される起動時設定処理において初期化される内部機能レジスタの上位アドレスを特定可能な値である)。
(2) In the gaming machine of (1),
The specific value data is data that can specify the address of the area to be initialized when the power supply to the gaming machine is started (for example, the specific value is activated before the activation process) The upper address of the internal function register initialized in the setting process can be specified).
このような構成によれば、不安定な状態において誤って特定命令が実行された場合であっても、電源供給が開始されたときに初期化される領域にアクセスされるが、このような領域にアクセスされても、特段の問題が生じることを低減できる。 According to such a configuration, even if a specific instruction is erroneously executed in an unstable state, an area to be initialized when power supply is started is accessed, but such an area Even when accessed, it is possible to reduce the occurrence of particular problems.
(3) (1)または(2)の遊技機において、
記憶領域に格納されているデータが正常であるか否かを確認するための確認用データ(たとえば、図6のSk4に示すRAM破壊診断用固定データおよびSk7に示すRAMパリティ調整用データ)を生成して前記特定記憶領域に記憶させる確認用データ生成処理(たとえば、図6のSk4およびSk7の処理)を、電源供給の停止が検出されたときに(たとえば、電断処理において)実行する確認用データ生成処理実行手段をさらに備え、
前記所定記憶領域(たとえば、Qレジスタ)には、前記確認用データ生成処理が実行された後に、前記特定値データが記憶される(たとえば、図6に示すように、Sk4およびSk7の処理が実行された後に、Sk8において、Qレジスタに特定値が設定される)。
(3) In the gaming machine of (1) or (2),
Generation of confirmation data (for example, RAM corruption diagnostic fixed data shown in Sk 4 and RAM parity adjustment data shown in Sk 7 shown in FIG. 6) for confirming whether the data stored in the storage area is normal or not The confirmation data generation process (for example, the process of Sk4 and Sk7 in FIG. 6) to be stored in the specific storage area is executed (for example, in the power-off process) when the stop of the power supply is detected. Further comprising data generation processing execution means,
The specific value data is stored in the predetermined storage area (for example, the Q register) after the confirmation data generation process is performed (for example, as illustrated in FIG. 6, the processes of Sk4 and Sk7 are performed). (Sk 8 sets a specific value in the Q register).
このような構成によれば、確認用データが記憶された特定記憶領域に記憶された後に、誤って特定命令が実行された場合であっても、該確認用データが記憶された特定記憶領域にアクセスする可能性を低減できる。 According to such a configuration, even if the specific instruction is erroneously executed after the confirmation data is stored in the specific storage area, the confirmation data is stored in the specific storage area in which the confirmation data is stored. The possibility of access can be reduced.
(4) (1)〜(3)いずれかの遊技機において、
前記遊技機への電源供給の開始が検出されたときにおいて(たとえば、図4の起動処理において)、前記特定値データが前記所定記憶領域に記憶された後に(たとえば、Sa1Aの処理の後に)、該電源供給の開始に応じた特別値データ(たとえば、Sa1Bで設定される起動時設定値)を特別記憶領域(たとえば、内部機能レジスタ)に記憶させる特別値記憶手段をさらに備え、
前記特定命令は、前記所定記憶領域に記憶されたデータを用いて記憶領域のアドレスを特定し、該特定されたアドレスの記憶領域にデータを前記プログラムに基づいて記憶する命令であり(たとえば、LDQ命令は、特定領域にデータを設定する処理を実行するためにも用いられ)、
前記特定値データは前記特別記憶領域のアドレスのうちの一部を特定可能なデータ(たとえば、内部機能レジスタの上位アドレス「F5」を特定可能な値)であり、前記特別記憶領域のアドレスのうちの前記一部のアドレス以外のアドレスを特定するために用いられるデータは前記特定命令により指定される(内部機能レジスタの下位アドレスについては、LDQ命令により指定される)。
(4) (1) to (3) In any of the gaming machines,
When the start of power supply to the gaming machine is detected (for example, in the start-up process of FIG. 4), after the specific value data is stored in the predetermined storage area (for example, after the process of Sa1A), The system further comprises special value storage means for storing special value data (for example, start setting value set in Sa1B) according to the start of the power supply in a special storage area (for example, internal function register),
The specific instruction is an instruction for specifying an address of a storage area using data stored in the predetermined storage area, and storing data in the storage area of the specified address based on the program (for example, LDQ) Instructions are also used to execute the process of setting data in a specific area),
The specific value data is data that can specify a part of the address of the special storage area (for example, a value that can specify the upper address “F5” of the internal function register), and among the addresses of the special storage area The data used to specify an address other than the part of the addresses of is specified by the specific instruction (the lower address of the internal function register is specified by the LDQ instruction).
このような構成によれば、特別値データを特別記憶領域に記憶させる処理におけるプログラムの容量を削減できる。 According to such a configuration, it is possible to reduce the program capacity in the process of storing the special value data in the special storage area.
(5) (1)〜(4)いずれかの遊技機において、
前記プログラムは、特定プログラム(たとえば、遊技プログラム)と非特定プログラム(たとえば、非遊技プログラム)とを含み、
前記特定記憶領域(たとえば、遊技RAM領域)は、前記特定プログラムで用いるデータが記憶されている領域であり、
前記特定記憶領域のアドレスは、第1情報(たとえば、該アドレスの上位アドレス)と第2情報(たとえば、該アドレスの下位アドレス)とを含み、
前記第1情報は、前記所定記憶領域(たとえば、Qレジスタ)に記憶されており、
前記特定命令は、前記第1情報と、該特定命令により指定された前記第2情報とからアドレスを特定し、該特定したアドレスの前記特定記憶領域からデータを読み出す命令であり、
前記命令実行手段は、前記特定命令を、前記特定プログラムに基づいて実行する一方、前記非特定命令に基づいては実行しない(たとえば、遊技プログラムではLDQ命令は用いられるが、非遊技プログラムではLDQ命令は用いられない)。
(5) (1) to (4) In any one of the gaming machines,
The program includes a specific program (for example, a game program) and a non-specific program (for example, a non-game program).
The specific storage area (for example, a game RAM area) is an area in which data used in the specific program is stored,
The address of the specific storage area includes first information (for example, upper address of the address) and second information (for example, lower address of the address)
The first information is stored in the predetermined storage area (for example, Q register),
The specific instruction is an instruction for specifying an address from the first information and the second information specified by the specific instruction, and reading data from the specific storage area of the specified address,
The command execution unit executes the specific command based on the specific program, but does not execute it based on the non-specific command (for example, an LDQ command is used in a game program but an LDQ command in a non-game program) Is not used).
このような構成によれば、非特定プログラムに基づいて特定命令を実行しないことから、非遊技プログラムにおいて特定命令が実行されることにより前記特定プログラムで用いるデータが記憶されている記憶領域にアクセスされることを低減できる。したがって、特定プログラムで用いるデータが記憶されている記憶領域に、意図しないアクセスが実行される可能性を低減できる。 According to such a configuration, since the specific instruction is not executed based on the non-specific program, the storage area in which the data used in the specific program is stored is accessed by executing the specific instruction in the non-gaming program. Can be reduced. Therefore, it is possible to reduce the possibility of unintended access to a storage area in which data used in a specific program is stored.
(6) (1)〜(5)いずれかの遊技機において、
前記プログラムは、特定プログラム(たとえば、遊技プログラム)と非特定プログラム(たとえば、非遊技プログラム)とを含み、
前記特定プログラムで用いられるプログラムが記憶されているプログラム記憶領域(たとえば、遊技プログラム領域)のアドレスは、第1情報(たとえば、該アドレスの上位アドレス)と第2情報(たとえば、該アドレスの下位アドレス)とを含み、
前記第1情報は、特殊記憶領域(たとえば、ベクターテーブル領域)に記憶されており、
特別命令(たとえば、RST命令およびCALLV命令)は、前記第1情報と、該特別命令により指定された前記第2情報とからアドレスを特定し、該特定したアドレスの前記プログラム記憶領域からプログラムを読み出す命令であり、
前記命令実行手段は、前記特別命令を、前記特定プログラムに基づいて実行する一方、前記非特定プログラムに基づいては実行しない(たとえば、遊技プログラムではRST命令およびCALLV命令は用いられるが、非遊技プログラムではRST命令およびCALLV命令は用いられない)。
(6) In any one of (1) to (5) gaming machines,
The program includes a specific program (for example, a game program) and a non-specific program (for example, a non-game program).
The address of a program storage area (for example, a gaming program area) in which a program used in the specific program is stored is first information (for example, upper address of the address) and second information (for example, lower address of the address) Including) and
The first information is stored in a special storage area (for example, a vector table area),
A special instruction (for example, an RST instruction and a CALLV instruction) specifies an address from the first information and the second information specified by the special instruction, and reads a program from the program storage area of the specified address. It is an instruction,
The instruction execution means executes the special instruction based on the specific program but does not execute it based on the non-specific program (for example, in a game program, an RST instruction and a CALLV instruction are used, but the non-game program Does not use the RST and CALLV instructions).
このような構成によれば、非特定プログラムに基づいて特別命令を実行しないことから、非遊技プログラムにおいて特別命令が実行されることにより特定プログラムで用いるプログラムが記憶されている記憶領域にアクセスされることを低減できる。したがって、特定プログラムで用いるプログラムが記憶されている記憶領域に、意図しないアクセスが実
行される可能性を低減できる。
According to such a configuration, since the special instruction is not executed based on the non-specific program, the special instruction is executed in the non-gaming program, whereby the storage area storing the program used in the specific program is accessed. Can be reduced. Therefore, it is possible to reduce the possibility of executing an unintended access to the storage area in which the program used in the specific program is stored.
[全体構成]
図1は、遊技機の全体構成例を示す模式図である。図1(a)は、遊技機1の主な外観構成の一例を示す模式図である。図1(b)は、遊技機1の主な内部構成の一例を示す模式図である。
[overall structure]
FIG. 1 is a schematic view showing an example of the overall configuration of a gaming machine. FIG. 1A is a schematic view showing an example of the main appearance configuration of the gaming machine 1. FIG. 1 (b) is a schematic view showing an example of the main internal configuration of the gaming machine 1.
図1(a)に示すように、本実施の形態に係る遊技機1は、演出を実行するための演出手段として、液晶表示器51と、種々の音を出力可能な1以上のスピーカ53と、種々の態様で発光可能な1以上のランプ63とを備える。液晶表示器51は、画像を表示する表示手段として機能する。スピーカ53は、音を出力する音出力手段として機能する。ランプ63は、発光する発光手段として機能する。
As shown in FIG. 1A, the gaming machine 1 according to the present embodiment is provided with a
図1(b)に示すように、遊技機1の内部には、遊技の進行を制御するとともに遊技の進行に応じて各種コマンドを出力する遊技制御基板40、および該コマンドに応じて所定の演出を制御する演出制御基板90などが設けられている。遊技制御基板40は、遊技の進行に関する処理を行うとともに、遊技制御基板40に搭載あるいは接続された構成を制御するメイン制御部41を備える。演出制御基板90は、遊技制御基板40から送信されるコマンドを受けて演出を行う処理を行うとともに、演出制御基板90に搭載あるいは接続された構成を制御するサブ制御部91を備える。
As shown in FIG. 1 (b), inside the gaming machine 1 is a
また、メイン制御部41は、CPU(Central Processing Unit)41aと、ROM(Read only memory)41bと、RAM(Random access memory)41cとを有する。また、サブ制御部91は、CPU91aと、ROM91bと、RAM91cとを有する。
In addition, the
また、メイン制御部41は、複数の入力ポート、および複数の出力ポートを含む。該複数の出力ポートそれぞれは、種々の信号(各種のモータ、ライト、表示部などを制御するための制御信号など)を出力する。複数の入力ポートそれぞれには、種々の信号(書く操作部からの操作検出信号、および後述の停電検出信号など)が入力される。また、以下では、遊技機1がスロットマシンであるとして説明するが、他の遊技機(たとえば、パチンコ遊技機)においても下記の思想を適用できる。
Also, the
スロットマシンにおいてゲームを行う場合には、まず、メダルをメダル投入部に投入するかMAXBETスイッチの操作などにより規定数の賭数を設定する。これにより、入賞ラインが有効となり、かつスタートスイッチへの操作が有効となり、ゲームが開始可能な状態となる。賭数設定済の状態でメダルが投入された場合には、その分はクレジットに増加される。 When playing a game in the slot machine, first, a specified number of bets is set by inserting a medal into the medal insertion portion or operating the MAX BET switch. As a result, the pay line is activated, the operation to the start switch is activated, and the game can be started. If a medal is inserted with the number of bets set, that amount is increased to credits.
1ゲームを開始可能となる賭数が設定されている状態(ゲームが開始可能な状態)でス
タートスイッチが操作されると、複数(たとえば、3つ)のリールが回転することで図柄が変動表示され、該リールにそれぞれ対応するストップスイッチが操作されることで対応するリールの回転が停止する。そして、透視窓の上中下段に3つの図柄が表示結果として導出表示される。入賞ラインLN上に入賞図柄の組合せが停止することで入賞が発生したときには、入賞に応じて、所定枚数のメダルが遊技者に対して付与される。
When the start switch is operated in a state where the number of bets for which one game can be started is set (the state where the game can be started), a plurality of (for example, three) reels are rotated to display symbols in a fluctuating manner. The rotation of the corresponding reel is stopped by operating the stop switches respectively corresponding to the reels. Then, three symbols are derived and displayed as a display result on the upper, middle, and lower portions of the see-through window. When a winning is generated by stopping the combination of winning symbols on the winning line LN, a predetermined number of medals are awarded to the player according to the winning.
また、内部抽選により抽選される対象役を抽選対象役または当選役という。役が入賞するためには、その役が内部抽選により当選している必要がある。 In addition, the target combination to be drawn by the internal drawing is called a selection object combination or a winning combination. In order for the part to be won, the part must be won by the internal lottery.
[メイン制御部のメモリ領域とプログラムについて]
図2は、メイン制御部41が用いるメモリ領域のアドレスマップである。図2に示すように、メイン制御部41が用いるメモリ領域は、ROM41bに割り当てられたメモリ領域(0000H〜7FFFH)と、RAM41cに割り当てられたメモリ領域(F000H〜FFFFH)と、を含む。
[About memory area and program of main control unit]
FIG. 2 is an address map of a memory area used by the
ROM41bのメモリ領域は、プログラム及び固定データが格納されるプログラム/データ領域(0000H〜26FFH)と、プログラムのタイトル、バージョン等の任意のデータを設定可能なROMコメント領域(2700H〜277FH)と、後述するCALLV命令のサブルーチンの上位アドレス及びタイマ割込処理(メイン)の先頭アドレスが設定されるベクタテーブル領域(2780H〜27A7H)と、メイン制御部41の内部機能をハードウェア的に設定するためのパラメータが設定されるHWパラメータ領域(27A8H〜27FFH)と、アクセスが禁止される未使用領域(2800H〜7FFFH)を含む。
The memory area of the
ROM41bにおけるHWパラメータ領域に設定されるパラメータは、プログラム/データ領域で使用するROM領域の最終アドレス(HPRGEND)、アクセス禁止するRAM領域の開始アドレス(HRAMSTAT)及び最終アドレス(HRAMEND)を含む。
The parameters set in the HW parameter area in the
RAM41cのメモリ領域は、ワークとして使用可能な使用可能領域(F000H〜F400H)と、メイン制御部41に搭載されている各機能を制御するためのレジスタ群が格納される内部機能レジスタ領域(F500H〜F6FFH)と、アクセスが禁止される未使用領域(F401H〜F4FFH、F700H〜FFFFH)と、を含む。また、図2には特に図示しないが、RAM41cのメモリ領域は、後述する信号領域を含む。信号領域の上位アドレスは、内部機能レジスタ同様に、「F5」であるとする。
The memory area of the
図3は、メイン制御部41のROM41bにおけるプログラム/データ領域及びRAM41cにおける使用可能領域のアドレスマップである。
FIG. 3 is an address map of a program / data area in the
図3(a)に示すように、ROM41bにおけるプログラム/データ領域は、遊技の進行に係わる遊技プログラムが記憶される遊技プログラム領域と、遊技プログラムが用いる遊技データが記憶される遊技データ領域と、未使用領域1と、遊技の進行に係わらない非遊技プログラムが記憶される非遊技プログラム領域と、非遊技プログラムが用いる非遊技データが記憶される非遊技データ領域と、未使用領域2と、を含む。
As shown in FIG. 3A, the program / data area in the
なお、遊技の進行とは、遊技を構成する一連のプロセスを進行させることであり、スロットマシンであれば、賭数を設定してゲームを開始可能とする段階、ゲームを開始してリールを回転させる段階、リールを停止させて表示結果を導出させる段階、表示結果に応じてメダル等の価値を付与する段階、を進行させることである。 In addition, the progress of the game is to advance a series of processes constituting the game, and in the case of a slot machine, set the number of bets and enable the start of the game, start the game and rotate the reels. The step of stopping the reel and the step of deriving the display result, and the step of imparting a value such as a medal according to the display result are advanced.
遊技の進行に係わる遊技プログラム領域と、遊技の進行に係わらない非遊技プログラムと、がそれぞれ別個に割り当てられているとともに、遊技プログラム領域及び非プログラム領域のうちROM41bの記憶領域において後方に割り当てられていた非プログラム領域の手前の領域は、少なくとも16バイト以上の未使用領域1が割り当てられているため、遊技の進行に係わる遊技プログラム領域と、遊技の進行に係わらない非遊技プログラムと、を記憶領域の違いに応じて容易に特定することができる。
A game program area related to the progress of the game and a non-game program not related to the progress of the game are separately allocated, and are allocated backward in the storage area of the
また、遊技プログラム領域と遊技データ領域、非遊技プログラム領域と非遊技データ領域はそれぞれ連続する領域に割り当てられる一方、遊技の進行に係わる遊技プログラム領域及び遊技データ領域と、遊技の進行に係わらない非遊技プログラム及び非遊技データ領域と、が少なくとも16バイト以上の未使用領域1を挟んで連続しない領域に割り当てられているため、遊技の進行に係わる遊技プログラム領域及び遊技データ領域と、遊技の進行に係わらない非遊技プログラム及び非遊技データ領域と、を記憶領域の違いに応じて容易に特定することができる。 Also, while the game program area and the game data area, the non-game program area and the non-game data area are respectively allocated to continuous areas, the game program area and the game data area related to the progress of the game and the non-regardless of the progress of the game Because the game program and the non-game data area are allocated to the non-continuous area across the unused area 1 of at least 16 bytes or more, the game program area and the game data area pertaining to the progress of the game, and the progress of the game Non-play programs and non-play data areas that are not involved can be easily identified according to the difference in storage area.
なお、上記において記憶領域の前後とは、記憶領域に割り当てられたアドレス値の大小関係であり、アドレスが小さい方が前方となり、アドレスが大きい方が後方となる。このため、一の記憶領域よりも後方に割り当てられた記憶領域とは、一の記憶領域よりもアドレス値が大きい記憶領域が該当し、一の記憶領域よりも前方に割り当てられた記憶領域とは、一の記憶領域よりもアドレス値が小さい記憶領域が該当する。 In the above description, the front and back of the storage area refers to the magnitude relationship of the address values assigned to the storage area. The smaller the address is the front and the larger the address is the rear. Therefore, a storage area allocated later than one storage area corresponds to a storage area whose address value is larger than that of one storage area, and a storage area allocated ahead of one storage area. A storage area whose address value is smaller than that of one storage area corresponds to this.
また、非遊技プログラム領域よりも後方に遊技プログラムが割り当てられ、非遊技プログラム領域よりも後方に割り当てられた遊技プログラムの手前に未使用領域が割り当てられた構成としても良く、このような構成においても遊技の進行に係わる遊技プログラム領域と、遊技の進行に係わらない非遊技プログラムと、を記憶領域の違いに応じて容易に特定することができる。 In addition, the game program may be allocated behind the non-game program area, and the unused area may be allocated in front of the game program allocated behind the non-game program area. A game program area related to the progress of the game and a non-game program not related to the progress of the game can be easily specified according to the difference in the storage area.
また、遊技プログラム領域と、非遊技プログラム領域と、が未使用領域1を挟んで隣接する領域に割り当てられる構成としても良く、このような構成であっても、遊技の進行に係わる遊技プログラム領域と、遊技の進行に係わらない非遊技プログラムと、を記憶領域の違いに応じて容易に特定することができる。 In addition, the game program area and the non-game program area may be allocated to the adjacent areas across the unused area 1, and even with such a structure, the game program area related to the progress of the game It is possible to easily identify non-game programs that are not involved in the progress of the game according to the difference in storage area.
また、ROM41bのプログラム/データ領域の未使用領域1、2には、全ての領域に0値が格納されているため、遊技プログラム領域及び遊技データ領域と、非遊技プログラム領域及び非遊技データと、未使用領域1、2と、を容易に区別することができるとともに、未使用領域1、2に不正なデータが格納されている場合でも容易に発見することができる。
In addition, since 0 values are stored in all areas in the unused areas 1 and 2 of the program / data area of the
なお、ROM41bのプログラム/データ領域の未使用領域1、2における全ての領域に1が格納される構成としても良く、このような構成とした場合でも、遊技プログラム領域及び遊技データ領域と、非遊技プログラム領域及び非遊技データと、未使用領域1、2と、を容易に区別することができるとともに、未使用領域1、2に不正なデータが格納されている場合でも容易に発見することができる。
Note that 1 may be stored in all areas in the unused areas 1 and 2 of the program / data area of the
また、遊技プログラム領域と、非遊技プログラム領域と、が別個の領域に割り当てられた構成であれば、遊技プログラム領域と、非遊技プログラム領域と、が隣接する領域にわら当てられる構成としても良く、このような構成であっても遊技の進行に係わる遊技プログラム領域と、遊技の進行に係わらない非遊技プログラムと、を記憶領域の違いに応じて容易に特定することができる。 In addition, as long as the game program area and the non-game program area are allocated to separate areas, the game program area and the non-game program area may be applied to the area adjacent to each other. Even with such a configuration, it is possible to easily identify the game program area related to the progress of the game and the non-game program not involved in the progress of the game according to the difference in the storage area.
また、遊技プログラム領域及び非遊技プログラム領域はいずれも、アドレスを2進数表記した場合に下位4桁の値が同じ0のアドレス(0H)から開始するようになっており、ROM41bのプログラム/データ領域のうち遊技の進行に係る遊技プログラム領域と、遊技の進行に係わらない非遊技プログラム領域と、を他の領域と容易に区別することができる。
The game program area and the non-game program area both start from an address (0H) of 0 having the same lower four digits when the address is expressed in binary, and the program / data area of the
また、遊技プログラム領域及び非遊技プログラム領域はいずれも、アドレスを2進数表記した場合に下位4桁の値が同じ0のアドレスから開始するだけでなく、16進数表記した場合に下位1桁の値が同じ0のアドレス(0H)から開始するので、アドレスを2進数表記した場合だけでなく、16進数表記した場合にも遊技プログラム領域と、非遊技プログラム領域と、を他の領域と容易に区別することができる。 In addition, in both the gaming program area and the non-game program area, when the address is expressed in binary notation, not only the lower 4 digits start from the same address of 0, but also in hexadecimal expression, the lower 1 digit value. Since it starts from the same address of 0 (0H), the game program area and the non-game program area can be easily distinguished from other areas not only when the address is expressed in binary but also when expressed in hexadecimal. can do.
なお、遊技プログラム領域及び非遊技プログラム領域がいずれも、アドレスを2進数表記したか、16進数表記したか、に関わらず、下位N(Nは1以上の自然数)桁が同じ値のアドレスから開始する構成であれば、遊技プログラム領域と、非遊技プログラム領域と、を他の領域と容易に区別することが可能であり、たとえば、下位N(Nは1以上の自然数)桁の値が同じ1のアドレスから開始する構成でも同様の効果が得られるものである。 In addition, regardless of whether the game program area and the non-game program area both represent addresses in binary notation or hexadecimal notation, the lower N (N is a natural number of 1 or more) digits start from an address having the same value. It is possible to easily distinguish the game program area and the non-game program area from other areas. For example, the value of the lower N (N is a natural number of 1 or more) digits are the same 1 The same effect can be obtained with the configuration starting from the address of.
図3(b)に示すように、RAM41cの使用可能領域は、遊技プログラムがワークとして用いる遊技RAM領域と、非遊技プログラムがワークとして用いる非遊技RAM領域と、未使用領域4と、を含んでおり、遊技RAM領域には、特別ワークと、重要ワークと、一般ワークと、未使用領域3と、遊技プログラムがデータを退避する遊技スタック領域と、が含まれ、非遊技RAM領域には、遊技プログラムが参照可能な領域と、遊技プログラムが参照不可能な領域と、非遊技プログラムがデータを退避する非遊技スタック領域と、が含まれる。なお、本実施形態では、遊技スタック領域と非遊技スタック領域とをそれぞれ異なる領域に個別に備える構成であるが、遊技プログラム及び非遊技プログラムが共用する一のスタック領域を備える構成としても良い。
As shown in FIG. 3B, the usable area of the
特別ワークは、サブ制御部91へコマンドを送信するためのデータ、各種ソフトウェア乱数等、設定開始前にのみ初期化されるデータが格納されるワークである。
The special work is a work in which data for transmitting a command to the
重要ワークは、各種表示器やLEDの表示用データ、I/Oポートの入出力データ、遊技時間の計時カウンタ等が格納されるワークである。 The important work is a work in which data for display of various displays and LEDs, input / output data of I / O port, clock counter of game time, etc. are stored.
一般ワークは、停止制御テーブル、停止図柄、メダルの払出枚数などが格納されるワークである。 The general work is a work in which a stop control table, a stop symbol, the number of medals paid out, and the like are stored.
遊技スタック領域(使用中)は、CPU41aのレジスタから退避したデータが格納される領域である。また、未使用スタック領域(未使用)は、起動処理において、初期化されることとなるが、遊技スタック領域(使用中)は、プログラムの続行のため、初期化されることはない。
The game stack area (in use) is an area in which data saved from the register of the
また、遊技RAM領域の開始アドレスは、「F000H」となる。また、本実施例では、特別ワークの開始アドレス、重要ワークの開始アドレス、および一般ワークの一部の開始アドレスそれぞれの上位アドレスは、「F0」であるとする。 Also, the start address of the game RAM area is "F000H". Further, in this embodiment, the upper addresses of the start address of the special work, the start address of the important work, and the start address of a part of the general work are assumed to be “F0”.
未使用領域3は、遊技プログラム及び非遊技プログラムのいずれも使用しない領域であり、予め定められた容量の遊技RAM領域に対して余剰となった領域である。 The unused area 3 is an area in which neither a game program nor a non-game program is used, and is an area which is surplus with respect to a game RAM area of a predetermined capacity.
また、未使用領域4は、遊技プログラム及び非遊技プログラムのいずれも使用しない1
6バイト以上の領域である。遊技RAM領域と、非遊技RAM領域とが、未使用領域4を挟んで連続しない領域に割り当てられているため、遊技の進行に係わる遊技プログラムが用いる遊技RAM領域と、遊技の進行に係わらない非遊技プログラムが用いる非遊技RAM領域と、を記憶領域の違いに応じて容易に特定することができる。
Also, the unused area 4 does not use any of the game program and the non-game program 1
It is an area of 6 bytes or more. Since the game RAM area and the non-game RAM area are allocated to the non-consecutive areas across the unused area 4, the game RAM area used by the game program related to the progress of the game and the non-system regardless of the progress of the game The non-play RAM area used by the game program can be easily identified according to the difference in storage area.
以下では、遊技プログラム領域、遊技データ領域及び遊技RAM領域をまとめて遊技領域と称す場合があり、非遊技プログラム領域、非遊技データ領域及び非遊技RAM領域をまとめて非遊技領域と称す場合がある。また、未使用領域1及び未使用領域2、未使用領域3及び未使用領域4をまとめて未使用領域と称す場合がある。 In the following, the game program area, the game data area and the game RAM area may be collectively referred to as a game area, and the non game program area, the non game data area and the non game RAM area may be collectively referred to as a non game area. . In addition, the unused area 1 and the unused area 2, the unused area 3 and the unused area 4 may be collectively referred to as an unused area.
メイン制御部41は、HWパラメータ領域に設定されるパラメータに基づいて、ROM41bのプログラム/データ領域のうちアクセスが禁止された領域へのアクセスがあったとき、RAM41cの使用可能領域のうちアクセスが許可に設定されていない領域)へのアクセスがあったとき、ROM41bのうちプログラム/データ領域以外の領域へのアクセスがあったとき、RAM41cのうち使用可能領域以外の領域へのアクセスがあったときに、すなわち正常な動作ではアクセスすることのないメモリ領域へのアクセスがあったときにイリーガルアクセスリセットを発生させることで、遊技の進行を不能化させる不能化処理を実行するので、ROM41bの未使用領域や動作とは関係しない領域、RAM41cの未使用領域等に不正なプログラムが格納された場合であっても、不正なプログラムが実行されてしまうことを防止できる。
The
本実施形態では、RAMアクセスが禁止されたときにおいて(たとえば、図6のSk9参照)、遊技RAM領域にアクセスされたときには、不能化処理を実行する。一方、RAMアクセスが禁止されたときにおいて、内部機能レジスタにアクセスされても不能化処理は実行されない。なお、変形例として、RAMアクセスが禁止されたときにおいて、内部機能レジスタにアクセスされたときには不能化処理を実行するとしてもよい。 In this embodiment, when the RAM access is prohibited (see, for example, Sk9 in FIG. 6), the disabling process is executed when the game RAM area is accessed. On the other hand, when the RAM access is prohibited, the disabling process is not executed even if the internal function register is accessed. As a modification, when the RAM access is prohibited, the disabling process may be executed when the internal function register is accessed.
特に本実施形態では、ROM41bのうちプログラムによってアクセスが許可されたプログラム/データ領域に遊技プログラム領域と、非遊技プログラム領域と、が割り当てられ、遊技プログラム領域よりも後方の非遊技プログラム領域の手前の領域に未使用領域1が割り当てられるとともに、HWパラメータ領域に設定されるパラメータに基づいて、プログラム/データ領域のうち遊技プログラム領域の先頭アドレスから非遊技プログラムの最終アドレスまでの領域を含む一かたまりの領域(遊技プログラム領域から非遊技データ領域までの領域)へのアクセスを一括して許可に設定する一方で、それ以外の領域、すなわちプログラム/データ領域のうち遊技プログラムや遊技データ、非遊技プログラム、非遊技データが格納されていない非遊技データよりも後の領域へのアクセスが禁止されるため、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。
In the present embodiment, in particular, the gaming program area and the non-gaming program area are allocated to the program / data area of the
また、ROM41bのうちプログラムによってアクセスが許可されたプログラム/データ領域において非遊技プログラム領域よりも後方に遊技領域が割り当てられ、非遊技プログラム領域よりも後方の遊技プログラム領域の手前の領域に未使用領域が割り当てられるとともに、HWパラメータ領域に設定されるパラメータに基づいて、プログラム/データ領域のうち非遊技プログラム領域の先頭アドレスから遊技プログラムの最終アドレスまでの領域を含む一かたまりの領域へのアクセスを一括して許可に設定する一方で、それ以外の領域へのアクセスが禁止されるようにしても、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。
Further, in the program / data area of the
なお、プログラム/データ領域に遊技プログラム領域と、非遊技プログラム領域と、が割り当てられ、遊技プログラム領域よりも後方の非遊技プログラム領域の手前の領域に未
使用領域1が割り当てられるとともに、プログラム/データ領域のうち遊技プログラム領域を含む一かたまりの領域(遊技プログラム領域から遊技データ領域までの領域)、非遊技プログラムを含む一かたまりの領域(非遊技プログラム領域から非遊技データ領域までの領域)へのアクセスをそれぞれ許可に設定し、他の領域へのアクセスを禁止する構成としても良く、このような構成とした場合でも、プログラム/データ領域のうち遊技プログラムや非遊技プログラムが格納されていない領域へのアクセスが禁止されるため、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。また、ROM41bのうちプログラムによってアクセスが許可されたプログラム/データ領域において非遊技プログラム領域よりも後方に遊技領域が割り当てられ、非遊技プログラム領域よりも後方の遊技プログラム領域の手前の領域に未使用領域が割り当てられるとともに、プログラム/データ領域のうち遊技プログラム領域を含む一かたまりの領域(遊技プログラム領域から遊技データ領域までの領域)、非遊技プログラムを含む一かたまりの領域(非遊技プログラム領域から非遊技データ領域までの領域)へのアクセスをそれぞれ許可に設定し、他の領域へのアクセスを禁止する構成としても良く、このような構成とした場合でも、プログラム/データ領域のうち遊技プログラムや非遊技プログラムが格納されていない領域へのアクセスが禁止されるため、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。
A game program area and a non-game program area are allocated to the program / data area, and an unused area 1 is allocated to an area in front of the non-game program area behind the game program area. Of the areas, one area including game program area (area from game program area to game data area), one area including non game program (area from non game program area to non game data area) It is also possible to set access to each permission and prohibit access to other areas, and even in such a configuration, to the area where game programs and non-game programs are not stored among program / data areas. Unauthorized access to the program, and unauthorized programs and data The control does not will take place can be prevented. Further, in the program / data area of the
また、上記では、プログラム/データ領域においてアクセスを許可する領域そのものを設定する構成であるが、プログラム/データ領域においてアクセスを禁止する領域を設定することで、間接的にアクセスを許可する領域が設定される構成としても良い。 Also, in the above description, although the area itself for permitting access in the program / data area is set, the area for indirectly permitting access is set by setting the area for prohibiting access in the program / data area. It is good also as composition which is done.
メイン制御部41は、HWパラメータ領域に設定されるパラメータに基づいて、プログラム走行を許可する指定エリア以外の領域においてユーザプログラムが実行された場合、すなわち正常な動作ではユーザプログラムが実行されることのない領域でユーザプログラムが実行された場合に、IAT回路(Illegal Address Trap:特に図示せず)がIAT発生信号を出力することで、遊技の進行を不能化させるので、ROM41bの未使用領域や動作とは関係しない領域、RAM41cの未使用領域等に不正なプログラムが格納された場合であっても、不正なプログラムが実行されてしまうことを防止できる。
When the user program is executed in an area other than the designated area for permitting program travel based on the parameters set in the HW parameter area, that is, the
特に本実施形態では、ROM41bのうちプログラムによってアクセスが許可されたプログラム/データ領域に遊技プログラム領域と、非遊技プログラム領域と、が割り当てられ、遊技プログラム領域よりも後方の非遊技プログラム領域の手前の領域に未使用領域1が割り当てられるとともに、HWパラメータ領域に設定されるパラメータに基づいて、プログラム/データ領域のうち遊技プログラム領域、非遊技プログラム領域の各々について、IAT回路がプログラム走行を許可する指定エリアとして設定する一方で、それ以外の領域、すなわちプログラム/データ領域のうち遊技プログラムや非遊技プログラムが格納されていない領域でのプログラム走行が禁止されるため、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。
In the present embodiment, in particular, the gaming program area and the non-gaming program area are allocated to the program / data area of the
また、ROM41bのうちプログラムによってアクセスが許可されたプログラム/データ領域において非遊技プログラム領域よりも後方に遊技領域が割り当てられ、非遊技プログラム領域よりも後方の遊技プログラム領域の手前の領域に未使用領域が割り当てられるとともに、HWパラメータ領域に設定されるパラメータに基づいて、プログラム/データ領域のうち遊技プログラム領域、非遊技プログラム領域の各々について、IAT回路がプログラム走行を許可する指定エリアとして設定する一方で、それ以外の領域でのプログラム走行が禁止されるようにしても、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。
Further, in the program / data area of the
なお、プログラム/データ領域に遊技プログラム領域と、非遊技プログラム領域と、が
割り当てられ、遊技プログラム領域よりも後方の非遊技プログラム領域の手前の領域に未使用領域1が割り当てられるとともに、HWパラメータ領域に設定されるパラメータに基づいて、プログラム/データ領域のうち遊技プログラム領域の先頭アドレスから非遊技プログラムの最終アドレスまでの領域を含む一かたまりの領域(遊技プログラム領域から非遊技データ領域までの領域)について、IAT回路がプログラム走行を許可する指定エリアとして一括して設定し、他の領域でのプログラム走行が禁止される構成としても良く、このような構成とした場合でも、プログラム/データ領域のうち遊技プログラムや非遊技プログラムが格納されていない領域でのプログラム走行が禁止されるため、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。また、ROM41bのうちプログラムによってアクセスが許可されたプログラム/データ領域において非遊技プログラム領域よりも後方に遊技領域が割り当てられ、非遊技プログラム領域よりも後方の遊技プログラム領域の手前の領域に未使用領域が割り当てられるとともに、HWパラメータ領域に設定されるパラメータに基づいて、プログラム/データ領域のうち非遊技プログラム領域の先頭アドレスから遊技プログラムの最終アドレスまでの領域を含む一かたまりの領域(遊技プログラム領域から非遊技データ領域までの領域)について、IAT回路がプログラム走行を許可する指定エリアとして一括して設定し、他の領域でのプログラム走行が禁止されるようにしても、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。
A game program area and a non game program area are allocated to the program / data area, and an unused area 1 is allocated to an area in front of the non game program area behind the game program area, and an HW parameter area Of the program / data area including the area from the top address of the gaming program area to the final address of the non-gaming program based on the parameters set in (area from the gaming program area to the non-gaming data area) , The IAT circuit may be collectively set as a designated area for permitting program travel, and program travel in other areas may be prohibited. Even in such a configuration, among the program / data areas No gaming programs or non-gaming programs are stored Since the program running in the range is inhibited, it is possible to prevent conducted unintended control by malware or illegal data. Further, in the program / data area of the
また、上記では、プログラム/データ領域においてプログラム走行を許可する領域そのものを設定する構成であるが、プログラム/データ領域においてプログラム走行を禁止する領域を設定することで、間接的にプログラム走行を許可する領域が設定される構成としても良い。 In the above description, although the program / data area is configured to set the area for permitting program travel itself, program travel is indirectly permitted by setting the area for prohibiting program travel in the program / data area. An area may be set.
[プログラムが用いる命令について]
メイン制御部41が実行するプログラムは、プログラム全体の進行を管理するメインルーチンと、他のプログラムの実行中に呼び出されるサブルーチンとを含む。
[About the instruction which the program uses]
The program executed by the
また、メイン制御部41にプログラム/データ領域に格納されたプログラムを実行させる命令として、CALL命令を含む。
Also, a CALL instruction is included as an instruction to cause the
CALL命令は、メインルーチンまたはサブルーチンにおいて指定されたアドレスに格納されたサブルーチンを呼び出して実行させる命令である。メイン制御部41は、CALL命令によりサブルーチンを呼び出す場合には、呼び出し元のアドレスをスタック領域に格納し、指定されたアドレスに格納されたサブルーチンを呼び出して実行する。そして、当該サブルーチンの終了後、スタック領域に格納されている呼び出し元のアドレス、すなわちCALL命令を実行した呼び出し元のメインルーチンまたはサブルーチンのプログラムに復帰する。
The CALL instruction is an instruction to call and execute a subroutine stored at an address designated in the main routine or subroutine. When calling a subroutine by the CALL instruction, the
また、CALL命令は、通常のCALL命令と、特殊なCALL命令であるCALLV命令と、を含む。通常のCALL命令は、上位アドレス及び下位アドレスの双方を指定して指定された上位アドレス及び下位アドレスによりアドレスを特定してサブルーチンを呼び出す命令であるのに対して、CALLV命令は、下位アドレスのみを指定することで、ROM41bのベクタテーブル領域に予め設定された上位アドレス及び指定された下位アドレスによりアドレスを特定してサブルーチンを呼び出す命令である。該特定されるアドレスの記憶領域には、遊技プログラムで用いられるプログラム(サブルーチン)が格納されている。したがって、CALLV命令により、通常のCALL命令と比較して少ないデータ量で、遊技プログラムで用いられるプログラム(サブルーチン)を呼び出すことが可能となる。
In addition, the CALL instruction includes a normal CALL instruction and a special CALL instruction CALLV instruction. Whereas a normal CALL instruction is an instruction that specifies an address by specifying an upper address and a lower address by specifying both the upper address and the lower address and calls a subroutine, the CALLV instruction only has the lower address. By specifying, it is an instruction to specify the address by the upper address preset in the vector table area of the
RST命令は、予め定められた複数の特定アドレスに対応する値(容量が特定アドレスよりも小さな値)を指定することで、指定された値に対応する特定アドレスに格納されたサブルーチンを呼び出して実行させる命令である。該特定アドレスの記憶領域には、遊技プログラムで用いられるプログラム(サブルーチン)が格納されている。したがって、RST命令により、上記した通常のCALL命令やCALLV命令と比較して少ないデータ量で、遊技プログラムで用いられるプログラム(サブルーチン)を呼び出すことが可能となる。メイン制御部41は、RST命令によりサブルーチンを呼び出す場合には、呼び出し元のアドレスをスタック領域に格納し、指定された値に対応する特定アドレスに格納されたサブルーチンを呼び出して実行する。そして、当該サブルーチンの終了後、スタック領域に格納されている呼び出し元のアドレス、すなわちRST命令を実行した呼び出し元のメインルーチンまたはサブルーチンに復帰する。
The RST instruction executes and calls a subroutine stored at a specific address corresponding to a specified value by specifying a value (a capacity is smaller than the specific address) corresponding to a plurality of predetermined specific addresses. It is an instruction to In the storage area of the specific address, a program (subroutine) used in the game program is stored. Therefore, it is possible to call a program (subroutine) used in the game program with a smaller amount of data compared to the above-mentioned ordinary CALL instruction or CALLV instruction by the RST instruction. When calling a subroutine by the RST instruction, the
メイン制御部41は、CALLV命令により、ベクタテーブル領域に設定された上位アドレスと、CALLV命令により指定された下位アドレスとによりアドレスを特定し、該特定されたアドレスに格納された遊技プログラムで用いられるプログラム(サブルーチン)を呼び出して実行する。このため、遊技プログラムのうち特に使用頻度の高いサブルーチンを呼び出す際に用いるアドレスの一部を構成する上位アドレスが予めベクタテーブルに設定されており、ベクタテーブルに設定された上位アドレスに基づいてアドレスが特定されるため、上位アドレス及び下位アドレスの双方を指定してプログラムを呼び出す通常のCALL命令に比較して少ないデータ量にてサブルーチンを呼び出すことが可能となり、これらのサブルーチンを呼び出す際にアドレスを指定するためのプログラムの無駄を削減することができる。
The
また、RST命令により指定される値(予め定められた複数のアドレスに対応する値)の容量は、該アドレスの容量よりも小さいことから、RST命令では通常のCALL命令に比較して少ないデータ量で遊技プログラムで用いられるプログラム(サブルーチン)を呼び出すことが可能であるため、遊技プログラムにおいてRST命令を用いることで、当該遊技プログラムのデータ容量を削減することができるようになっている。 In addition, since the capacity of the value (value corresponding to a plurality of predetermined addresses) specified by the RST instruction is smaller than the capacity of the address, the data amount of the RST instruction is smaller than that of the normal CALL instruction. Since it is possible to call a program (subroutine) used in the game program, the data capacity of the game program can be reduced by using the RST command in the game program.
メイン制御部41にプログラム/データ領域に格納されたデータを読み出す命令としてLD命令を含む。LD命令は、メインルーチンまたはサブルーチンにおいて指定されたアドレスに格納されたデータを指定されたレジスタに読み出す命令である。メイン制御部41は、LD命令により指定されたアドレスに格納されたデータを読み出し、LD命令により指定されたレジスタ(たとえば、内部機能レジスタ)に読み出したデータを格納する。
The
また、LD命令は、通常のLD命令と、特殊なLD命令であるLDQ命令と、を含む。通常のLD命令は、上位アドレス及び下位アドレスの双方を指定して指定された上位アドレス及び下位アドレスによりROM41bまたはRAM41cの領域に格納されているデータを読み出す命令である。LDQ命令は、下位アドレスのみを指定することで、前述のRAM41cの内部機能レジスタ領域における特別なレジスタ(Qレジスタ)に予め設定された上位アドレス及び指定された下位アドレスによりアドレスを特定してROM41bまたはRAM41cの領域に格納されているデータを読み出して指定されたレジスタに読み出したデータを格納する命令であり、通常のLD命令に比較して少ないデータ量で所定のデータを所定のレジスタに格納することが可能となる。
The LD instruction also includes a normal LD instruction and a special LD instruction LDQ instruction. The normal LD instruction is an instruction to read out the data stored in the area of the
メインルーチンまたはサブルーチンにおいてROM41b、RAM41cの領域に格納されているデータを読み出す場合に、特殊なLD命令であるLDQ命令を用いることで、領域を示す全てのアドレス(上位部分及び下位部分)を指定するのではなく、アドレスの下位部分のみを指定して領域のデータを読み出すことが可能である。LDQ命令を用いることで、上位アドレス及び下位アドレスの双方を指定してデータを読み出す通常のLD命
令に比較して少ないデータ量にてデータを読み出すことが可能となり、データを読み出す際にアドレスを指定するためのプログラムの無駄を削減することができる。
When reading data stored in the area of the
また、LD命令(通常のLD命令と、LDQ命令など)は、記憶領域を用いた他の処理にも用いられる。該他の処理とは、該記憶領域に格納されているデータを参照する処理(たとえば、後述の図4のSa1の処理など)と、該記憶領域にデータを設定する処理と、該記憶処理に設定されているデータを消去(クリア)する処理(たとえば、後述の図5のSa16の処理など)などを含む。 In addition, LD instructions (normal LD instructions, LDQ instructions, etc.) are also used for other processes using storage areas. The other processing includes processing of referring to data stored in the storage area (for example, processing of Sa1 in FIG. 4 described later, etc.), processing of setting data in the storage area, and storage processing. It includes a process of erasing (clearing) the set data (for example, a process of Sa 16 in FIG. 5 described later) and the like.
また、遊技プログラムとは、遊技の進行に係わるプログラムであり、当該プログラムに基づく処理を実行しないと、遊技の進行に支障をきたす処理を実行するためのプログラムである。一方、非遊技プログラムとは、遊技の進行に係わらないプログラムであり、遊技プログラムから呼び出されて当該プログラムに基づく処理が実行されずに遊技プログラムに復帰した場合でも、遊技を進行させることが可能な処理を実行するためのプログラムである。 The game program is a program related to the progress of a game, and is a program for executing a process that hinders the progress of the game if the process based on the program is not executed. On the other hand, a non-game program is a program that does not relate to the progress of a game, and even if it is called from the game program and the process based on the program is not executed, the game can be progressed It is a program for executing processing.
換言すると、非遊技プログラムは、遊技の進行に関する処理とは異なる処理を実行するプログラムである。「遊技の進行に関する処理とは異なる処理」とは、たとえば、非遊技RAM領域初期化処理において非遊技RAM領域を初期化する処理、メダルセンサ処理におけるメダルセンサチェック処理、役比モニタ用データ処理における各状態カウント処理、非遊技関連処理におけるセンサ監視処理、試験信号出力処理、メダル通過時間タイマ更新処理、役比モニタ表示データ選択処理等を含む。また、図3(a)に示すように、遊技プログラム領域と、非遊技プログラム領域とは分けて構成されている。したがって、たとえば、遊技プログラム領域の容量が定められている状況であったとしても、非遊技プログラム領域の容量を考慮する必要がない。したがって、遊技プログラム領域の設計に関する自由度を向上させることができる。 In other words, the non-game program is a program that executes a process different from the process related to the progress of the game. The “process different from the process related to the progress of the game” is, for example, a process of initializing a non-game RAM area in a non-game RAM area initialization process, a medal sensor check process in Each state count processing, sensor monitoring processing in non-game related processing, test signal output processing, medal passing time timer update processing, combination ratio monitor display data selection processing and the like are included. Further, as shown in FIG. 3A, the game program area and the non-game program area are separately configured. Therefore, for example, even if the capacity of the game program area is determined, there is no need to consider the capacity of the non-game program area. Therefore, the degree of freedom in the design of the game program area can be improved.
遊技プログラムでは、前述のCALL命令やLD命令について、特殊なCALL命令であるCALLV命令、RST命令、特殊なLD命令であるLDQ命令を含むいずれの命令も使用されることがあり、特殊なCALL命令を用いてアドレスを特定してサブルーチンを呼び出すことも、特殊なLD命令を用いてROM41b、RAM41cにおける特定の遊技データ、非遊技データを読み出すことも可能になっている。
In the game program, any command including the special CALL command CALLV command, RST command, special LD command LDQ command may be used for the above-mentioned CALL command or LD command, and the special CALL command may be used. It is also possible to use a specific address to call a subroutine or to use a special LD command to read out specific game data and non-game data in the
非遊技プログラムでは、前述のCALL命令について、通常のCALL命令が使用される一方、特殊なCALL命令であるCALLV命令が使用されないようになっている。したがって、通常のCALL命令を用いてアドレスを特定してサブルーチンを呼び出すことがある一方で、特殊なCALL命令を用いてサブルーチンを呼び出すことがない。したがって、非遊技プログラムにより不用意にROM41bにおける遊技プログラム領域にアクセスされてしまうことを防止できる。
In the non-gaming program, the usual CALL instruction is used for the above-mentioned CALL instruction, but the special CALL instruction CALLV instruction is not used. Therefore, while a subroutine may be called by specifying an address using a normal CALL instruction, a subroutine may not be called using a special CALL instruction. Therefore, it is possible to prevent the game program area in the
また、非遊技プログラムでは、前述のLD命令について、通常のLD命令が使用可能となっている。これにより、非遊技プログラムにおいては、通常のLD命令を用いてアドレスを特定して所定のデータを読み出すことが可能となる。一方、非遊技プログラムでは、LDQ命令は使用されないようになっている。したがって、不用意に、LDQ命令によりデータを読み出す処理が実行されることを防止できる。 Further, in the non-game program, a normal LD command can be used for the above-mentioned LD command. As a result, in the non-game program, it is possible to specify an address using a normal LD command and read out predetermined data. On the other hand, in non-gaming programs, the LDQ command is not used. Therefore, it is possible to prevent the process of reading data by the LDQ instruction from being performed carelessly.
メイン制御部41が遊技プログラム及び非遊技プログラムを実行することで行う各種処理の制御内容について、図4〜図6に基づいて説明する。また、図4〜図6は、遊技機がスロットマシンである場合の制御内容である。
The control contents of various processes performed by the
[メイン制御部41の起動時の処理と起動処理について]
メイン制御部41が行う起動処理について、図4および図5に基づいて説明する。該起動処理は、遊技プログラムに含まれるサブルーチンである。
[About the process when starting the
The startup process performed by the
メイン制御部41は、所定の開始条件が成立したときに、リセットの発生によりタイマ割込みが禁止に設定された状態で起動し、ROM41bに格納されているプログラムに従って各種処理を行う。起動した後は、まず、遊技プログラムに含まれる起動時設定処理を行って、すべての出力ポートを初期化し、メイン制御部41が備える内部レジスタ(内部機能レジスタを含む)をROM41bの所定領域に予め設定されている内蔵レジスタ初期化テーブルに基づいて初期化した、遊技プログラムに含まれる初期設定処理を行う。このように、本実施形態では、電力供給が開始されたときに、内部機能レジスタの初期化などが実行される。また、所定の開始条件は、遊技機1への電力供給が開始される(遊技機1への電力供給が検出される)ことにより成立する条件と、遊技機1に対してシステムリセットされることにより成立する条件とを含む。また、システムリセットの実行条件は、たとえば、ユーザによるリセット操作が実行されたとき、ウオッチドッグタイマからのタイムアウト信号が発生したとき、およびIAT回路からのIAT信号が発生したときなどを含む。
When the predetermined start condition is satisfied, the
なお、変形例として、メイン制御部41が備える内部レジスタ(内部機能レジスタを含む)の初期化処理などは、プログラムで実行せずに、ハードウェア(たとえば、初期化回路(特に図示せず))が実行する構成としてもよい。
Note that, as a modification, initialization processing of internal registers (including internal function registers) included in
図4に示すように、まず、Sa1Aにおいて、メイン制御部41は、Qレジスタに特定値データを設定する。以下では、「特定値データ」を、単に「特定値」という。ここで、特定値について説明する。本実施形態では、電断から復帰したとき(電源供給が開始されたとき、つまり起動処理が実行されたとき)には、遊技RAM領域などのデータに基づいて、電断が発生したとき(電源供給が停止したとき)の制御状態に復帰させる。したがって、遊技RAM領域は、制御状態に復帰させるという観点で、重要な領域である。
As shown in FIG. 4, first, in Sa1A, the
図2に示すように、遊技RAM領域の上位アドレスは「F0」である。ここで、特定値は、遊技RAM領域とは異なる領域の上位アドレスを特定可能な領域である。本実施形態では、該異なる領域とは、「内部機能レジスタ」および「信号領域」であるとする。つまり、特定値は、内部機能レジスタの上位アドレスである「F5」を特定可能な値となる。換言すると、特定値は、内部機能レジスタの上位アドレスである「F5」を特定するために用いられる値となる。また、特定値は、信号領域の上位アドレス「F5」を特定可能な値でもある。 As shown in FIG. 2, the upper address of the game RAM area is "F0". Here, the specific value is an area in which the upper address of the area different from the game RAM area can be specified. In this embodiment, the different areas are the "internal function register" and the "signal area". That is, the specific value is a value that can specify "F5" which is the upper address of the internal function register. In other words, the specific value is a value used to specify "F5" which is the upper address of the internal function register. The specific value is also a value that can specify the upper address "F5" of the signal area.
Sa1Bの処理が終了すると、各種設定処理を実行する。この各種設定処理では、複数(N個とする。Nは2以上の整数)の設定処理が実行される。N個の設定処理は、たとえば、乱数開始の設定、シリアル通信回路の設定、リセット/割込コントローラの設定などを含む。該N個の設定処理により、該N個の設定それぞれに応じたN個の設定値(以下では、「起動時設定値」ともいう。)が内部機能レジスタ内のN個の領域それぞれに格納される。 When the process of Sa1B ends, various setting processes are executed. In the various setting processes, a plurality of (N, where N is an integer of 2 or more) setting processes are executed. The N setting processes include, for example, random number start setting, serial communication circuit setting, and reset / interrupt controller setting. By the N setting processes, N set values (hereinafter also referred to as “start-up set values”) corresponding to the N sets are stored in each of the N areas in the internal function register. Ru.
ここで、N個の起動時設定値の内部機能レジスタへの格納も、LDQ命令で実行される。具体的には、Sa1AにおいてQレジスタに格納された特定値(上位アドレスがF5)と、該LDQ命令で該N個それぞれについて指定された値(下位アドレス)とに基づいて、該N個の設定値は内部機能レジスタ内のN個の領域それぞれに格納される。 Here, storage of the N start setting values in the internal function register is also executed by the LDQ instruction. Specifically, based on the specific value (upper address is F5) stored in the Q register in Sa1A and the value (lower address) specified for each of the N in the LDQ instruction, the N settings are made. The value is stored in each of N regions in the internal function register.
Sa1Bの処理終了後、Sa1に進む。Sa1では、入力ポートの信号領域を参照する
処理を実行する。遊技機1への電力供給が停止したとき(電断が発生したとき)には、電断検出回路(図示せず)がメイン制御部41に対して停電検出信号を送信する。停電検出信号は、電断が発生した(電圧の低下)ことを示す信号である。また、信号領域には、該停電検出信号に係る情報(たとえば、停電検出信号フラグ)が格納される。電断検出回路から停電検出信号が出力されているときには停電検出信号フラグが信号領域に格納され(ON状態)、電断検出回路から停電検出信号が出力されていないときには停電検出信号フラグが信号領域に格納されなくなる(OFF状態)。
After the processing of Sa1B ends, the process proceeds to Sa1. In Sa1, a process of referring to the signal area of the input port is performed. When the power supply to the gaming machine 1 is stopped (when a power failure occurs), a power failure detection circuit (not shown) transmits a power failure detection signal to the
本実施形態では、この信号領域のアドレスは、「F560」とする。なお、変形例として、信号領域は、上位アドレスが「F5」であるアドレスであれば、如何なるアドレスであってもよい。 In this embodiment, the address of this signal area is “F 560”. As a modification, the signal area may be any address as long as the upper address is “F5”.
つまり、Sa1においてはLDQ命令で、該信号領域の下位アドレス(60)が指定され、該下位アドレスと、Qレジスタに格納されている特定値(該信号領域の上位アドレスであるF5)とに基づいて、信号領域のアドレスを特定する。Sa1においては、該特定したアドレスの領域である信号領域(入力ポートの信号領域)を参照する。 That is, the lower address (60) of the signal area is designated by the LDQ instruction in Sa1, and the lower address and the specific value (the upper address F5 of the signal area) stored in the Q register are used. To identify the address of the signal area. In Sa1, a signal area (signal area of input port) which is an area of the specified address is referred to.
Sa2においては、電断検出回路(図示せず)から出力される停電検出信号がON状態であるか否か(信号領域に停電検出信号フラグが格納されているか否か)を判定する(Sa2)。そして、停電検出信号がON状態である場合には、停電検出信号がOFF状態となるまで待機する(Sa1のYES)。その後、スロットマシン1の電源電圧が正常となり、停電検出信号がOFF状態となった後は(Sa1のNO)、Sa3Aに進む。 In Sa2, it is determined whether the power failure detection signal output from the power failure detection circuit (not shown) is in the ON state (whether or not the power failure detection signal flag is stored in the signal region) (Sa2) . When the power failure detection signal is in the ON state, the process waits until the power failure detection signal is in the OFF state (YES in Sa1). Thereafter, after the power supply voltage of the slot machine 1 becomes normal and the power failure detection signal is turned off (NO at Sa1), the process proceeds to Sa3A.
Sa3Aでは、RAM41cの使用可能領域のアクセスを許可する許可処理を、LDQ命令により実行する。具体的には、該許可処理は、内部機能レジスタ内のRAMアクセス領域に、許可フラグを設定することにより実行される。本実施形態では、該RAMアクセス領域のアドレスを「F550」とする。
In Sa3A, the permission process for permitting access to the available area of the
つまり、Sa3AにおいてはLDQ命令で、該RAMアクセス領域の下位アドレス(50)が指定され、該下位アドレスと、Qレジスタに格納されている特定値(該RAMアクセス領域の上位アドレスであるF5)とに基づいて、RAMアクセス領域のアドレスを特定する。Sa3Aにおいては、該特定したアドレスの領域であるRAMアクセス領域に対して、LDQ命令により許可フラグを設定する。 That is, in Sa3A, the lower address (50) of the RAM access area is specified by the LDQ instruction, and the lower address and the specific value (F5 which is the upper address of the RAM access area) stored in the Q register. Based on the address of the RAM access area. In Sa3A, the permission flag is set by the LDQ instruction to the RAM access area which is the area of the specified address.
次に、Sa3Bでは、特定値が設定されていたQレジスタに該特定値(特定値データ)を消去して所定値データを設定する。以下では、「所定値データ」を、単に「所定値」という。ここで、所定値とは、遊技RAM領域の上位アドレス「F0」を特定可能なデータである。換言すると、所定値とは、遊技RAM領域の上位アドレス「F0」を特定するために用いられるデータである。つまり、Sa3Bの処理を実行することにより、特定値(F5を特定可能な値)から、所定値(F0を特定可能な値)に変更される。
このように、Qレジスタに特定値が設定されている期間(Sa1A〜Sa3Bまでの期間、後述の図6の電断処理でのSk8〜電断処理が終了するまでの期間)において、機能設定レジスタを用いる処理を実行する場合には、LDQ命令により、該機能設定レジスタを用いる処理)が実行される。したがって、Qレジスタに特定値が設定されている期間において、LD命令により該機能設定レジスタを用いる処理する構成よりもプログラム容量を削減できる。
また、Qレジスタに所定値が設定されている期間(たとえば、Sa3Bの処理が実行されたときから、電断処理のSk8(後述の図6参照)の処理が実行されるまでの期間)において、遊技RAM領域を用いる処理を実行する場合には、LDQ命令により、遊技RAM領域を用いる処理が実行される。したがって、Qレジスタに所定値が設定されている期
間において、LD命令により該遊技RAM領域を用いる処理する構成よりもプログラム容量を削減できる。
Next, in Sa3B, the specific value (specific value data) is erased in the Q register in which the specific value has been set, and predetermined value data is set. Hereinafter, "predetermined value data" is simply referred to as "predetermined value". Here, the predetermined value is data that can specify the upper address "F0" of the game RAM area. In other words, the predetermined value is data used to specify the upper address "F0" of the game RAM area. That is, by executing the process of Sa3B, the specific value (the value that can specify F5) is changed to the predetermined value (the value that can specify F0).
In this manner, in a period in which a specific value is set in the Q register (a period from Sa1A to Sa3B, and a period from Sk8 to the end of the power-off process in the power-off process of FIG. In the case of executing the process using (1), the LDQ instruction executes the process of using the function setting register). Therefore, the program capacity can be reduced as compared with the configuration in which the function setting register is processed by the LD instruction in a period in which the specific value is set in the Q register.
In addition, in a period in which a predetermined value is set in the Q register (for example, a period from when the process of Sa3B is performed to when the process of Sk8 of the power interruption process (see FIG. 6 described later) is performed), When the process using the game RAM area is executed, the process using the game RAM area is executed by the LDQ command. Therefore, in a period in which a predetermined value is set in the Q register, the program capacity can be reduced as compared with the configuration in which the game RAM area is processed by the LD command.
次いで、RAM41cの所定領域のパリティを算出し(Sa3)、スタックポインタに予め定められた初期アドレスを設定する(Sa4)。そして、Sa3のステップにおいて算出したパリティが正常であるか否かを判定する(Sa5)。この判定は、後述するSk6で計算されたRAMパリティ調整用データを用いて行われる。パリティが正常である場合には、後述する電断処理のSk7においてRAM41cの所定領域に設定されたRAM破壊診断用固定データを取得して(Sa6)、当該RAM破壊診断用固定データに基づきRAM41cの記憶内容が破壊されていないか否かを診断する(Sa7)。
Next, the parity of a predetermined area of the
Sa5のステップにおいてパリティが正常であると判定した場合、及びSa7のステップにおいてRAM41cの記憶内容を診断した場合は、Sa3のステップにおいて算出したRAMのパリティとSa7における診断の結果に基づいて、RAM41cに異常があるか否かを判定する(Sa8)。なお、RAM41cに異常がある場合とは、パリティが正常でない場合、またはパリティが正常であるが記憶内容に異常があると診断した場合である。
If it is determined in step Sa5 that the parity is normal, and if the storage content of the
そして、RAM41cに異常がある場合には、メイン制御部41が備えるレジスタのうち演算結果が格納されるフラグレジスタの値を、遊技RAM領域の遊技スタック領域に所定の順序で記憶させることで退避させた後(Sa9)、非遊技プログラムに含まれる非遊技RAM領域初期化処理を呼び出して行う(Sa10)。そして、非遊技RAM領域初期化処理において、RAM41cの非遊技RAM領域を初期化した後、起動処理に戻る。そして、起動処理に戻った際には、Sa9のステップにおいて遊技スタック領域に退避させたフラグレジスタの値を、退避させるときと逆の順序で遊技スタック領域から順次読み出してフラグレジスタに設定することで、RAM領域初期化処理を行う前の状態にフラグレジスタを復帰させる(Sa11)。
Then, if there is an abnormality in the
非遊技RAM領域初期化処理では、まず、呼び出し元の遊技プログラムにより使用されていたスタックポインタSPにより示される遊技スタック領域の現在のアドレスの値を、非遊技RAM領域の所定領域に記憶させて退避させる。その後、当該スタックポインタSPの値として非遊技スタック領域の所定値(前回の非遊技プログラムの終了時にスタックポインタSPにより示されるアドレスとして非遊技RAM領域の所定領域に記憶されている値)を設定することで、スタックポインタSPを非遊技プログラム用に設定する。そして、上述のフラグレジスタを含むメイン制御部41が備えるすべてのレジスタの値を、スタックポインタSPにより特定される非遊技RAM領域の非遊技スタック領域に所定の順序で記憶させることで退避させる。その後、初期化対象RAMの先頭アドレス(未使用領域4の最初のアドレス)と終了アドレス(非遊技RAM領域の最後のアドレス)を指定し、当該先頭アドレスを指定アドレスの初期値として指定アドレスのデータをクリアした後に指定アドレスを次のアドレスに更新する処理を、指定アドレスが当該終了アドレスとなるまで繰り返し実行することで、初期化対象RAMの先頭アドレスから終了アドレスまでの領域(本実施形態では、未使用領域4の最初から非遊技RAM領域の最後までの領域)を初期化する。そして、非遊技RAM領域初期化処理を開始した際に非遊技スタック領域に記憶させて退避させていたレジスタの値を、退避させるときと逆の順序で非遊技スタック領域から順次読み出して、当該順序に対応するレジスタに設定することで、非遊技RAM領域初期化処理を開始したときの状態にすべてのレジスタを復帰させる。その後、非遊技RAM領域初期化処理を開始した際に非遊技RAM領域の所定領域に退避させたスタックポインタSPの値を、スタックポインタSPに設定することで、非遊技RAM領域初期化処理を開始したときの状態にスタックポインタSPを復帰させて、非遊技RAM領域初期化処理を終了させる。
In the non-gaming RAM area initialization process, first, the value of the current address of the gaming stack area indicated by the stack pointer SP used by the calling party's gaming program is stored in a predetermined area of the non-gaming RAM area and saved. Let Thereafter, a predetermined value of the non-gaming stack area (a value stored in a predetermined area of the non-gaming RAM area as an address indicated by the stack pointer SP at the end of the previous non-gaming program) is set as the value of the stack pointer SP. Thus, the stack pointer SP is set for the non-gaming program. Then, the values of all the registers provided in the
なお、非遊技RAM領域初期化処理において、初期化対象RAMの先頭アドレスと終了アドレスとを指定することで、初期化対象RAMの容量を算出し、当該容量分のRAM領域を初期化対象RAMの先頭アドレスから順次クリアすることで、初期化対象RAMの先頭アドレスから終了アドレスまでの領域を初期化する構成としても良い。 In the non-gaming RAM area initialization process, the capacity of the initialization object RAM is calculated by specifying the start address and the end address of the initialization object RAM, and the RAM area corresponding to the capacity is the initialization object RAM. The area from the start address to the end address of the initialization target RAM may be initialized by sequentially clearing from the start address.
Sa8のステップにおいてRAM41cに異常がないと判定した場合、及びSa11のステップにおいてレジスタを復帰させた場合は、RAM41cに設定されているRAM破壊診断用固定データをクリアして(Sa12)、RAM41cに異常がある場合に初期化処理を行う対象となる遊技RAM領域のアドレスを指定するためのRAM破壊時初期化開始アドレスを設定する(Sa13)。その後、入力ポートを参照して設定キースイッチがON状態であるか否かを判定する(Sa14)。
If it is determined in the step Sa8 that the
Sa14のステップにおいて設定キースイッチがON状態であると判定した場合は、設定変更処理を行う。設定変更処理では、遊技店の店員などにより設定値を変更可能な設定変更状態に制御される。この設定値とは、遊技者にとっての有利度合いを示す値である。 If it is determined in step Sa14 that the setting key switch is in the ON state, setting change processing is performed. In the setting change process, control is performed in a setting change state in which the set value can be changed by a store clerk or the like of the game arcade. The setting value is a value indicating the degree of advantage to the player.
Sa14のステップにおいて設定キースイッチがON状態でないと判定した場合は、Sa3のステップにおいて算出したRAMのパリティとSa7における診断結果に基づいて、RAM41cに異常があるか否かを判定し(Sa15)、RAM41cに異常がないと判定した場合には、外部出力信号を出力するための出力バッファをクリアする(Sa16)。RAM41cの遊技RAM領域の所定領域には、この出力バッファが設けられている。また、RAM41cの所定領域に設定されており、リールの回転エラーが検出された回数を計数するためのリールエラーカウンタをクリアする(Sa17)。RAM41cの遊技RAM領域の所定領域には、このリールエラーカウンタが設けられている。その後、RAM41cの記憶内容に基づいてスタックポインタSPに電断時のアドレスを設定することで、スタックポインタを電断時の状態に復帰させ(Sa18)、ポート入力処理を2回連続で行う(Sa19、Sa20)。
If it is determined in step Sa14 that the setting key switch is not in the ON state, it is determined whether there is an abnormality in the
ポート入力処理は、パラレル入力ポート511に入力される各種スイッチ類の検出信号等の入力状態に関する入力状態データ(各種スイッチ類の現在の入力状態を示す入力データ、前回と今回の入力データが同じ状態である旨を示す確定データ、前回から確定データが変化した旨を示すエッジデータ)を更新する処理である。RAM41cの遊技RAM領域の所定領域には、各種スイッチ類の入力状態データを格納するポート入力バッファ0〜2が設けられており、ポート入力処理により更新される各種スイッチ類の入力状態データは、その種類毎に予め定められたポート入力バッファの所定ビットに格納されるようになっている。ポート入力処理では、パラレル入力ポート511の入力ポート0〜2にされる各種スイッチ類の検出状態(ON状態またはOFF状態)を入力データとして、ポート入力バッファの所定ビットに格納する。また、前回と今回のポート入力処理での検出状態(ON状態またはOFF状態)を比較して、今回と前回の入力データが同じ状態である場合には、今回の入力データの検出状態を示すように確定データを更新する一方、今回と前回の入力データが異なる状態である場合には、前回の確定データを維持する。また、今回と前回の確定データを比較して、確定データがOFF状態からON状態に変化した場合には、確定データがOFF状態からON状態に変化した旨を示すONエッジデータをポート入力バッファ0〜2の所定ビットに格納し、確定データがON状態からOFF状態に変化した場合には、確定データがON状態からOFF状態に変化した旨を示すOFFエッジデータをポート入力バッファ0〜2の所定ビットに格納する。ポート入力バッファに格納された各種スイッチ類の入力データ、確定データ、エッジデータは、遊技プログラム及び非遊技プログラムから参照することが可能である。
Port input processing is input state data related to input states such as detection signals of various switches input to the parallel input port 511 (input data indicating current input states of various switches, same state as previous and current input data) And the edge data indicating that the finalized data has changed since the previous time. In a predetermined area of the game RAM area of the
また、起動処理では、ポート入力処理を2回連続して行うことで、その後、ポート入力処理が行われる際に、起動処理が行われた以後の各種スイッチ類の入力状態すなわち遊技機への電力供給が再開された後の各種スイッチ類の入力状態に基づいて、各種スイッチ類の検出信号等の入力状態に関する入力状態データが作成されるので、意図しない入力状況が特定されてしまうことを防止できるようになっている。また、ポート入力処理において、3回以上のポート入力処理により取得された入力データ(たとえば、今回、前回及び前々回の入力データ)に基づいて確定データを作成する構成でも良い。このような構成では、確定データを作成するために必要なポート入力処理の回数よりも1回少ない回数連続してポート入力処理を起動処理において行う構成とすることで、起動処理が行われた後にポート入力処理が行われる際に、起動処理が行われた以後の各種スイッチ類の入力状態に基づいて入力状態データを作成させることができる。 Further, in the activation process, by performing the port input process twice in succession, when the port input process is subsequently performed, the input state of various switches after the activation process is performed, that is, the power to the gaming machine Since input state data regarding input states such as detection signals of various switches are created based on input states of various switches after supply is resumed, it is possible to prevent an unintended input situation from being identified. It is supposed to be. Further, in the port input process, the configuration may be such that the finalized data is created based on the input data (for example, the current, the previous time, and the previous second time input data) acquired by the three or more port input processes. In such a configuration, after the start processing is performed, the port input processing is continuously performed in the start processing a number of times smaller than the number of the port input processing required to create the definite data. When port input processing is performed, input state data can be created based on input states of various switches after the start processing is performed.
Sa19及びSa20のステップにおいてポート入力処理を行った後は、所定の入力ポートを参照して(Sa21)、リセット/設定スイッチがON状態であるか否かを判定し(Sa22)、リセット/設定スイッチがON状態である場合には、当該リセット/設定スイッチがON状態である旨を示すステータスデータをRAM41cの所定領域に設定する(Sa23)。
After performing port input processing in the steps of Sa19 and Sa20, reference is made to a predetermined input port (Sa21) to determine whether the reset / setting switch is ON (Sa22), and the reset / setting switch Is in the ON state, status data indicating that the reset / setting switch is in the ON state is set in a predetermined area of the
なお、リセット/設定スイッチは、設定変更状態とは異なる状態であるときにおいては、エラー状態や打止状態を解除するためのリセットスイッチとして機能し、設定変更状態においては設定値を変更するためのスイッチとして機能する。 The reset / setting switch functions as a reset switch for releasing an error state or a suspension state when it is in a state different from the setting change state, and for changing the setting value in the setting change state. Act as a switch.
Sa22のステップにおいてリセット/設定スイッチがON状態でないと判定した場合、及びSa23のステップにおいてステータスデータを設定した後は、電断前の制御状態に復帰した旨を示す復帰コマンドをサブ制御部91に送信した後(Sa24)、タイマ割込み処理(メイン)のコマンド送信処理において、ドア開放検出スイッチ25の検出状態を示すドアコマンドを送信する旨を示すドアコマンド送信フラグをRAM41cの所定領域に設定する(Sa25)。コマンド送信処理では、通常、ドア開放検出スイッチ25の検出状態が変化した場合にドアコマンドを送信するが、RAM41cの所定領域にドアコマンド送信フラグが設定されている場合には、ドア開放検出スイッチ25の検出状態が変化したか否かにかかわらず、ドア開放検出スイッチ25の検出状態を示すドアコマンドを送信する。
If it is determined in the step Sa22 that the reset / setting switch is not in the ON state, and after the status data is set in the step Sa23, a return command indicating that the control state before power interruption is restored is sent to the
そして、Sa25のステップにおいてドアコマンド送信フラグを設定した後は、すべてのレジスタをRAM41cに記憶されている電断前の状態に復帰させ(Sa26)、タイマ割込みを許可に設定して(Sa27)、起動処理を終了させてタイマ割込処理(メイン)に移行させた後、スロットマシン1への電力供給が停止される前に実行していたメイン処理における処理に復帰する。
Then, after setting the door command transmission flag in the step of Sa25, restore all the registers to the state before power interruption stored in the
一方、Sa15のステップにおいて、RAM41cに異常があると判定した場合には、遊技RAM初期化処理を行って(Sa28)、Sa13のステップにおいて設定したRAM破壊時初期化開始アドレスからRAM41cの遊技RAM領域の終端までの領域を初期化する。その後、Sa9〜Sa11のステップまでの処理と同様に、レジスタのうちフラグが設定されるフラグレジスタの値を遊技RAM領域の遊技スタック領域に退避させた後(Sa29)、非遊技プログラムに含まれる非遊技RAM領域初期化処理を呼び出して行って(Sa30)、RAM41cのすべての非遊技RAM領域を初期化した後、呼び出し元に戻り、Sa29のステップにおいて退避させたレジスタを復帰させる(Sa31)。
On the other hand, if it is determined in the step Sa15 that the
Sa31のステップにおいてレジスタを復帰させた後は、ドアコマンド送信フラグを設定し(Sa32)、タイマ割込みを許可に設定し(Sa33)、RAM41cに異常があ
る旨を示すRAM異常エラーコード(E8)を所定のレジスタに準備して(Sa34)、起動処理を終了させてエラー処理に移行させる。
After restoring the register in step Sa31, set the door command transmission flag (Sa32), set the timer interrupt to be enabled (Sa33), and use the RAM error code (E8) to indicate that the
なお、エラー処理では、遊技の進行が不能化されるエラー状態に制御する。また、所定のレジスタに準備されているエラーコード(E8)を特定可能なエラーコマンドをサブ制御部91に対して送信し、当該エラーコード(E8)をRAM41cの所定領域にその他の処理でも参照可能なエラーフラグとして設定する。また、当該エラーコード(E8)を遊技補助表示器(特に図示せず)に表示させるように制御する。その後は、所定のレジスタに準備されているエラーコード(E8)に応じたエラー状態の解除条件が成立したことが特定されるまでエラー状態の制御を行う。RAM異常エラーコード(E8)が所定のレジスタに準備されてエラー状態に移行された場合には、設定キースイッチをONにした状態で遊技機に電源を投入することによって、設定変更状態に移行させてすべての遊技RAM領域を初期化させることで、RAM41cのデータの異常を確実に解消してエラー状態を解除することができるようになっている。一方、設定キースイッチをON状態にせずに電源スイッチをONにした場合には、RAM41cの異常が再び検出されて、再度、エラー状態となる。
In the error processing, control is made to an error state in which the progress of the game is disabled. Further, an error command capable of specifying an error code (E8) prepared in a predetermined register is transmitted to the
このように、メイン制御部41は、スロットマシン1への電力供給が開始された後には、起動処理を最初に行うようになっており、起動処理では、スロットマシン1への電力供給が開始された際のメイン制御部41の状態に応じて、タイマ割込処理(メイン)、設定変更処理、エラー処理のいずれかに移行させる。そして、これらの処理に移行させる際に、移行させる処理の種類を特定可能なコマンドをサブ制御部91に対して送信するようになっており、タイマ割込処理(メイン)に移行させる場合すなわち遊技機への電力供給が停止される前の制御状態に復帰した場合には、復帰コマンドをサブ制御部91に対して送信し、設定変更処理を開始して設定変更状態に移行する場合には、設定コマンド(開始)をサブ制御部91に対して送信し、RAM41cの異常によりエラー処理を開始してエラー状態に移行する場合には、エラーコマンドをサブ制御部91に対して送信する。
As described above, after the power supply to the slot machine 1 is started, the
なお、メイン制御部41は、起動処理から設定変更処理に移行した後は、設定変更状態を経て、ゲームの進行が可能な状態に復帰するようになっており、当該ゲームの進行が可能な状態に復帰する際には、当該設定変更状態が終了されることを特定可能な設定コマンド(終了)をサブ制御部91に対して送信する一方で、復帰コマンドは送信しない。また、RAM41cの異常によりエラー処理に移行した後は、上述のように設定変更処理に移行されてエラー状態が解除されることで、ゲームの進行が可能な状態に復帰するようになっており、エラー処理が終了されてゲームの進行が可能な状態に復帰する場合にも、サブ制御部91に対して復帰コマンドを送信しない。
After the
このように、本実施形態のメイン制御部41は、遊技機への電力供給が開始されることで起動し、遊技プログラムに含まれる起動時設定処理を行い、当該起動時設定処理によりすべての出力ポートを初期化するようになっている。
As described above, the
また、メイン制御部41は、起動時設定処理を行った後、起動処理では、RAM41cに異常があると判定した場合に、非遊技プログラムに含まれる非遊技RAM領域初期化処理を呼び出して、RAM41cの非遊技RAM領域の所定領域を初期化する。また、起動処理では、遊技プログラムに含まれるRAM初期化処理を呼び出して、RAM41cの遊技RAM領域の所定領域を初期化するようになっており、遊技RAM領域は遊技プログラムにより初期化し、非遊技RAM領域は非遊技プログラムにより初期化する構成になっている。
In addition, after performing the startup setting process, the
次いで、メイン制御部41が行う電断処理(メイン)の制御内容について、図6に基づ
いて説明する。なお、電断処理(メイン)は、遊技プログラムに含まれるサブルーチンである。
Next, the control contents of the power interruption process (main) performed by the
メイン制御部41は、上述のタイマ割込処理(メイン)において電圧低下状態が所定時間継続したと判定される場合に電断処理(メイン)を実行する。つまり、メイン制御部41が、遊技機への電源供給の停止を検出したときに、電断処理を実行する。
The
図6に示すように、電断処理(メイン)では、まず、メイン制御部41が備えるすべてのレジスタの値を、遊技RAM領域の遊技スタック領域に所定の順序で記憶させることで退避させ(Sk1)、スタックポインタSPにより示される遊技スタック領域の現在のアドレスを遊技RAM領域の所定領域に記憶させることで退避させる(Sk2)。なお、メイン制御部41がレジスタの値を記憶させる遊技RAM領域の遊技スタック領域やスタックポインタSPにより示されるアドレスの値を記憶させる遊技RAM領域の所定領域を含む遊技RAM領域の所定領域は、バックアップ電源によりバックアップされており、スロットマシン1への電力供給が停止しても、バックアップ電源により電力が供給される限り当該遊技RAM領域の記憶内容が保存されるようになっている。
As shown in FIG. 6, in the power-off process (main), first, the values of all the registers provided in the
次に、複数の出力ポートすべてを初期化する(Sk3)。これにより、該複数の出力ポートから出力されていた信号の出力が停止される。 Next, all of the plurality of output ports are initialized (Sk3). Thereby, the output of the signal output from the plurality of output ports is stopped.
次に、メイン制御部41は、RAM41cの所定領域に破壊診断用データを設定する(Sk4)。本実施形態では、破壊診断用データが設定されるRAM41cの所定領域は、遊技RAM領域であるとする。なお、変形例として、破壊診断用データが設定されるRAM41cの所定領域は、遊技RAM領域とは異なる領域としてもよい。
Next, the
次に、RAM41cの所定領域に設定されているパリティ調整用データをクリアする(Sk5)。次に、メイン制御部41は、RAM41cのすべての格納領域(未使用領域及び未使用スタック領域を含む)に基づいて、パリティ調整用データを計算する。本実施形態では、メイン制御部41は、RAM41cのすべての格納領域(未使用領域及び未使用スタック領域を含む)の排他的論理和が0になるように新たなRAM41cのパリティ調整用データを計算する。次に、メイン制御部41は、当該パリティ調整用データをRAM41cの所定領域に設定する(Sk7)。本実施形態では、パリティ調整用データが設定されるRAM41cの所定領域は、遊技RAM領域であるとする。なお、変形例として、パリティ調整用データが設定されるRAM41cの所定領域は、遊技RAM領域とは異なる領域としてもよい。
Next, the parity adjustment data set in the predetermined area of the
次に、メイン制御部41は、Qレジスタに特定値を設定する。前述のように、特定値とは、遊技RAM領域とは異なる領域である「内部機能レジスタ」の上位アドレス(F5)を特定可能な情報である。
Next, the
電断処理が実行されてから、Sk8の処理が実行されるまでには、Qレジスタには、所定値が設定されている(後述の図7参照)。たとえば、Sk4において破壊診断用データを設定する領域Aの特定、Sk5においてRAMパリティ調整用データが設定されている領域Bの特定、Sk7のRAMパリティ調整用データを設定する領域Cの特定などは、LDQ命令を用いて実行される。Sk4においては、Qレジスタに設定されている所定値と、LDQ命令により指定された値とに基づいて領域Aのアドレスが特定される。また、Sk5においては、Qレジスタに設定されている所定値と、LDQ命令により指定された値とに基づいて領域Bのアドレスが特定される。また、Sk7においては、Qレジスタに設定されている所定値と、LDQ命令により指定された値とに基づいて領域Cのアドレスが特定される。 A predetermined value is set in the Q register after the power-off process is performed until the process of Sk8 is performed (see FIG. 7 described later). For example, the identification of the region A where the destruction diagnostic data is set in Sk4, the identification of the region B where the RAM parity adjustment data is set in Sk5, the identification of the region C where the data for RAM parity adjustment of Sk7 is set, etc. It is executed using the LDQ instruction. In Sk4, the address of the area A is specified based on the predetermined value set in the Q register and the value specified by the LDQ instruction. Further, in Sk5, the address of the area B is identified based on the predetermined value set in the Q register and the value designated by the LDQ instruction. Further, in Sk7, the address of the area C is specified based on the predetermined value set in the Q register and the value specified by the LDQ instruction.
次に、Sk9において、RAM41cへのアクセスの禁止を設定する。Sk9の禁止処理について説明する。この禁止処理については、特定命令を用いて実行される。具体的には、該禁止処理は、内部機能レジスタ内のRAMアクセス領域(前述のように、アドレスは「F550」)に、アクセス禁止フラグを設定することにより実行される。
Next, in Sk9, the prohibition of the access to the
つまり、Sk9においてはLDQ命令で、該RAMアクセス領域の下位アドレス(50)が指定され、該下位アドレスと、Qレジスタに格納されている特定値(該RAMアクセス領域の上位アドレスであるF5)とに基づいて、RAMアクセス領域のアドレスを特定する。Sk9においては、該特定したアドレスの領域であるRAMアクセス領域に対して、LDQ命令によりアクセス禁止フラグを設定する。 That is, the lower address (50) of the RAM access area is designated by the LDQ instruction in Sk9, and the lower address and the specific value (the upper address F5 of the RAM access area) stored in the Q register. Based on the address of the RAM access area. In Sk9, an access prohibition flag is set by the LDQ instruction to the RAM access area which is the area of the specified address.
次に、Sk10において、タイマ割込の禁止を設定する。Sk10の禁止処理について説明する。この禁止処理については、LDQ命令を用いて実行される。具体的には、該禁止処理は、内部機能レジスタ内のタイマ割込領域(アドレスは「F560」とする)に、タイマ割込禁止フラグを設定することにより実行される。 Next, in Sk10, the timer interrupt is inhibited. The prohibition process of Sk10 will be described. The prohibition process is executed using the LDQ instruction. Specifically, the prohibition process is executed by setting a timer interruption prohibition flag in a timer interruption area (address is set to "F560") in the internal function register.
つまり、Sk10においてはLDQ命令で、該タイマ割込領域の下位アドレス(60)が指定され、該下位アドレスと、Qレジスタに格納されている特定値(該タイマ割込領域の上位アドレスであるF5)とに基づいて、タイマ割込領域のアドレスを特定する。Sk10においては、該特定したアドレスの領域であるタイマ割込領域に対して、LDQ命令によりタイマ割込禁止フラグを設定する。以下では、Sk9およびSk10で説明したRAMアクセス禁止フラグと、割込禁止フラグとを「電断時設定値」ともいう。電断時設定値とは、「電源供給の停止に応じた値」ともいえる。 That is, the lower address (60) of the timer interrupt area is specified by the LDQ instruction in Sk10, and the lower address and the specific value stored in the Q register (F5 which is the upper address of the timer interrupt area) And the address of the timer interrupt area is specified. In Sk10, the timer interrupt prohibition flag is set by the LDQ instruction to the timer interrupt region which is the region of the specified address. Hereinafter, the RAM access prohibition flag described in Sk9 and Sk10 and the interrupt prohibition flag are also referred to as “power-off set value”. The power-off set value can also be referred to as “a value according to the stop of power supply”.
Sk10の処理の終了後、ループ処理に入る。ループ処理では、電圧低下信号の出力状況を監視した状態で待機する。この状態で、電圧低下信号が入力されなくなった場合に電圧の回復を判定し、起動処理(メイン)からプログラムをスタートさせる。一方、電圧低下信号が入力されたまま電圧が低下すると内部的に動作停止状態になる。 After the process of Sk10 is completed, the loop process is started. In loop processing, it waits while monitoring the output condition of the voltage drop signal. In this state, when the voltage drop signal is not input, it is determined that the voltage is restored, and the program is started from the start process (main). On the other hand, if the voltage drops while the voltage drop signal is input, the operation is internally stopped.
以上の処理によって、外部からのAC100Vの電力供給が停止される場合には、電断処理(メイン)が実行され、電断前のレジスタの値が遊技RAM領域の遊技スタック領域に退避されるとともに、当該遊技スタック領域を含むRAM41cの遊技RAM領域の所定領域の内容もバックアップ電源が供給されることで保持されるため、スロットマシン1への電力供給が再開された際に実行される起動処理(メイン)において、電断前の制御状態に復帰させることが可能となる。
When the power supply of AC 100 V from the outside is stopped by the above processing, the power-off process (main) is executed, and the value of the register before the power-off is saved in the game stack area of the game RAM area. Since the content of the predetermined area of the game RAM area of the
[特定値の設定タイミングと所定値の設定タイミングについて]
次に、図7を用いて、Qレジスタへの特定値の設定タイミングと、Qレジスタへの所定値の設定タイミングとを説明する。なお、図7に示す各タイミングは、あくまで一例を示したものであり、各タイミング間の期間は他の期間となってもよい。
[About setting timing of specific value and setting timing of predetermined value]
Next, the setting timing of the specific value to the Q register and the setting timing of the predetermined value to the Q register will be described with reference to FIG. Each timing shown in FIG. 7 is merely an example, and the period between each timing may be another period.
タイミングT0で、電断処理が開始されたとする。電断処理(図6参照)中のタイミングT1において、Qレジスタに特定値が設定されたとする(図6のSk8)。このタイミングT1までの期間においてはQレジスタに所定値が設定されている。また、タイミングT1以降においては、Qレジスタに特定値が設定される。また、タイミングT1の後のタイミングT2において、RAM41cへのアクセスが禁止に設定される(Sk9)。そして、タイミングT3において、電断処理が終了したとする。なお、図7の例では、Qレジスタに特定値が設定されたときに、RAM41cへのアクセスが禁止されるようになっているが、Qレジスタに特定値が設定された後、他の処理を実行してから、RAM41cへ
のアクセスを禁止するようにしてもよい。
It is assumed that the power-off process is started at timing T0. It is assumed that a specific value is set in the Q register at timing T1 in the power-off process (see FIG. 6) (Sk 8 in FIG. 6). A predetermined value is set in the Q register in the period up to the timing T1. Further, after timing T1, a specific value is set in the Q register. Further, at timing T2 after timing T1, access to the
また、タイミングT4で起動処理(図4および図5)が開始されたとする。この起動処理が実行されたときに、Qレジスタに特定値が設定される(図4のSa1A参照)。これにより、Qレジスタには特定値が設定されることになる。その後、タイミングT5において、RAM41cへのアクセスが許可される(Sa3A参照)。タイミングT5の後のタイミングT6でQレジスタに所定値が設定される(Sa3B参照)。これにより、Qレジスタには特定値が設定されずに所定値が設定されることになる。その後、タイミングT7で起動処理が終了したとする。
Further, it is assumed that the activation process (FIGS. 4 and 5) is started at timing T4. When this start-up process is executed, a specific value is set in the Q register (see Sa1A in FIG. 4). As a result, a specific value is set in the Q register. Thereafter, at timing T5, access to the
[本実施形態の効果について]
次に、本実施形態の効果を説明する。
[About the effect of this embodiment]
Next, the effects of the present embodiment will be described.
(1−1) 前述したように、メイン制御部41がレジスタの値を記憶させる遊技RAM領域の遊技スタック領域やスタックポインタSPにより示されるアドレスの値を記憶させる遊技RAM領域の所定領域を含む遊技RAM領域の所定領域は、バックアップ電源によりバックアップされており、電断処理では、Sk1に示すレジスタを遊技RAM領域に退避させる処理、Sk2のスタックポインタを遊技RAM領域に退避させる処理などが実行される。また、起動処理においては、該遊技RAM領域に格納されたデータに基づいて、制御状態(電断処理実行時の制御状態)を復帰させる。したがって、遊技RAM領域は重要な領域である。
(1-1) As described above, the game includes the game stack area of the game RAM area in which the
また、電断処理は、電圧低下状態が所定時間継続したと判定される場合に実行される。したがって、電断処理が実行された場合というのは、電源供給の観点でいうと、不安定な状態である。このような不安定な状態では、誤動作などによりLDQ命令が実行されてしまう場合がある。 The power interruption process is performed when it is determined that the voltage drop state has continued for a predetermined time. Therefore, the case where the power interruption process is performed is an unstable state in terms of power supply. In such an unstable state, the LDQ instruction may be executed due to a malfunction or the like.
仮に、電断処理において、Qレジスタに所定値(遊技RAM領域の上位アドレス「F0」を示す値)が格納されている場合において、誤動作などによりLDQ命令が実行されてしまうと、重要な領域である遊技RAM領域にアクセス(遊技機の設計者が意図しないアクセス)が実行されてしまうことになる。 If a predetermined value (value indicating the upper address “F0” in the game RAM area) is stored in the Q register in the power-off process, if the LDQ instruction is executed due to a malfunction or the like, the important area Access to a certain gaming RAM area (access not intended by the designer of the gaming machine) will be executed.
そこで、本実施形態では、電断処理の所定タイミング(図7の例では、タイミングT1)においては、Qレジスタに、特定値が格納される。該特定値は、遊技RAM領域とは異なる領域(本実施形態では、内部機能レジスタ)の上位アドレス「F5」を特定可能な値である。したがって、電源供給の観点で不安定な状態であるときに実行される電断処理において、誤動作などによりLDQ命令が実行されてしまったとしても、遊技RAM領域にはアクセスされない(内部機能レジスタにアクセスされる)。したがって、設計者が意図しないアクセスが実行されてしまう可能性を低減できる。 Therefore, in the present embodiment, the specific value is stored in the Q register at a predetermined timing of the power-off process (the timing T1 in the example of FIG. 7). The specific value is a value capable of specifying the upper address "F5" of an area different from the game RAM area (in this embodiment, the internal function register). Therefore, in the power interruption process executed when the system is in an unstable state from the viewpoint of power supply, even if the LDQ instruction is executed due to a malfunction or the like, the game RAM area is not accessed (access to internal function register Will be Therefore, it is possible to reduce the possibility that access not intended by the designer will be performed.
また、起動処理は、電源の供給が開始された直後に実行される処理である。したがって、起動処理が実行された場合というのは、電源供給の観点でいうと、不安定な状態である。このような不安定な状態では、誤動作などによりLDQ命令が実行されてしまう場合がある。 The start-up process is a process executed immediately after the supply of power is started. Therefore, the case where the start-up process is performed is an unstable state in terms of power supply. In such an unstable state, the LDQ instruction may be executed due to a malfunction or the like.
仮に、起動処理において、Qレジスタに所定値(遊技RAM領域の上位アドレス「F0」を示す値)が格納されている場合において、誤動作などによりLDQ命令が実行されてしまうと、重要な領域である遊技RAM領域にアクセス(設計者が意図しないアクセス)が実行されてしまうことになる。 If a predetermined value (value indicating the upper address “F0” in the game RAM area) is stored in the Q register in the activation process, it is an important area if the LDQ instruction is executed due to a malfunction or the like. Access to the game RAM area (access not intended by the designer) will be executed.
そこで、本実施形態では、起動処理の所定タイミング(図7の例では、タイミングT4)においては、Qレジスタに、特定値が格納される。該特定値は、遊技RAM領域とは異なる領域(本実施形態では、内部機能レジスタ)の上位アドレス「F5」を特定可能な値である。したがって、電源供給の観点で不安定な状態であるときに実行される起動処理において、誤動作などによりLDQ命令が実行されてしまったとしても、遊技RAM領域にはアクセスされない(内部機能レジスタにアクセスされる)。したがって、設計者が意図しないアクセスが実行されてしまう可能性を低減できる。 Therefore, in the present embodiment, a specific value is stored in the Q register at a predetermined timing (in the example of FIG. 7, timing T4) of the activation process. The specific value is a value capable of specifying the upper address "F5" of an area different from the game RAM area (in this embodiment, the internal function register). Therefore, even if the LDQ instruction is executed due to a malfunction or the like in the activation process executed when the system is in an unstable state from the viewpoint of power supply, the game RAM area is not accessed (the internal function register is accessed ). Therefore, it is possible to reduce the possibility that access not intended by the designer will be performed.
また、記憶領域(遊技RAM領域、および内部機能レジスタを含む)のアドレスは、第1情報(たとえば、該アドレスの上位アドレス)と第2情報(たとえば、該アドレスの下位アドレス)とを含み、たとえば、第1情報は、所定記憶領域(たとえば、Qレジスタ)に記憶させておくことが好ましい。そして、特定命令(たとえば、LDQ命令)では、第1情報と第2情報とからアドレスを特定し、特定したアドレスの記憶領域からデータを読み出す。この読み出しの際には、該所定記憶領域に記憶されている第1情報と、該特定命令で指定された第2情報とからアドレスを特定する。このような構成によれば、特定命令において第1情報および第2情報の双方を指定してアドレスを特定する構成と比較して、特定命令のプログラム容量を削減することができる。 In addition, the address of the storage area (including the game RAM area and the internal function register) includes the first information (for example, the upper address of the address) and the second information (for example, the lower address of the address) Preferably, the first information is stored in a predetermined storage area (for example, a Q register). Then, in the specific instruction (for example, the LDQ instruction), the address is specified from the first information and the second information, and the data is read from the storage area of the specified address. At the time of this reading, an address is specified from the first information stored in the predetermined storage area and the second information specified by the specific command. According to such a configuration, the program capacity of the specific instruction can be reduced as compared with the configuration in which both the first information and the second information are specified in the specific instruction to specify the address.
また、電断処理および起動処理において、Qレジスタに所定値が設定されているときにおいて、遊技RAM領域(該所定値からアドレスを特定可能な領域)を用いた処理(たとえば、遊技RAM領域からデータを読み出す処理、または、遊技RAM領域にデータを書き込む処理など)を実行する場合には、LDQ命令により実行する。したがって、該遊技RAM領域を用いた処理におけるLDQ命令のプログラム容量を削減することができる。 Also, in the power-off process and the start-up process, when a predetermined value is set in the Q register, a process (for example, data from the game RAM area) using a game RAM area (an area that can specify an address from the predetermined value) To execute the process of reading out data or the process of writing data in the game RAM area, etc. is executed by the LDQ command. Therefore, the program capacity of the LDQ instruction in the processing using the game RAM area can be reduced.
また、電断処理および起動処理において、Qレジスタに特定値が設定されているときには、内部機能レジスタ(該特定値からアドレスを特定可能な領域)を用いた処理(たとえば、内部機能レジスタにデータを書き込む処理など)を実行する場合には、LDQ命令により実行する。したがって、該内部機能レジスタを用いた処理におけるLDQ命令のプログラム容量を削減することができる。 Also, in the power-off process and start-up process, when a specific value is set in the Q register, a process using an internal function register (an area where an address can be specified from the specific value) (for example, data in the internal function register) In the case of executing the writing process etc., it is executed by the LDQ instruction. Therefore, the program capacity of the LDQ instruction in the processing using the internal function register can be reduced.
(1−2) また、スロットマシン1への電力供給が開始されたときには、電断処理に先立って、起動時設定処理が実行される。この起動時設定処理では、内部機能レジスタが初期化される。このように、電断処理で特定値が設定された以降に、該電断処理内において、誤動作などによりLDQ命令が実行された場合であっても、該LDQ命令では、起動時設定処理で初期化される内部機能レジスタにアクセスされることになる。したがって、特段の問題が生じる可能性を低減できる。 (1-2) Further, when the power supply to the slot machine 1 is started, the startup setting process is executed prior to the power-off process. In this startup setting process, the internal function register is initialized. As described above, even if the LDQ instruction is executed due to a malfunction or the like in the power-off process after the specific value is set in the power-off process, the LDQ instruction performs the initial setting process at startup. The internal function registers to be integrated will be accessed. Therefore, the possibility of particular problems occurring can be reduced.
(1−3) また、記憶領域(たとえば、遊技RAM領域)に格納されているデータが正常であるか否かを確認するための確認用データ(たとえば、図6のSk4に示すRAM破壊診断用固定データおよびSk7に示すRAMパリティ調整用データ)を生成して前記特定記憶領域に記憶させる確認用データ生成処理(たとえば、図6のSk4およびSk7の処理)を、電源供給の停止が検出されたときに(たとえば、電断処理において)実行する。また、Qレジスタには、確認用データ生成処理が実行された後に、特定値が設定される(たとえば、図6に示すように、Sk4およびSk7の処理が実行された後に、Sk8において、Qレジスタに特定値が入力される)。 (1-3) In addition, confirmation data (for example, RAM destruction diagnosis shown in Sk4 in FIG. 6) for confirming whether or not the data stored in the storage area (for example, game RAM area) is normal. In the confirmation data generation process (for example, the process of Sk4 and Sk7 in FIG. 6) of generating fixed data and RAM parity adjustment data shown in Sk7 and storing the same in the specific storage area, stop of power supply is detected When (for example, in the power-off process) Further, a specific value is set in the Q register after the confirmation data generation process is executed (for example, as shown in FIG. 6, after the processes of Sk4 and Sk7 are executed, the Sk register Specific value is input to
したがって、確認用データが記憶された特定記憶領域に記憶された後に、誤って特定命令が実行された場合であっても、該確認用データが記憶された特定記憶領域にアクセスする可能性を低減できる。 Therefore, even if the specific instruction is mistakenly executed after the confirmation data is stored in the specific storage area, the possibility of accessing the specific storage area in which the confirmation data is stored is reduced. it can.
(1−4) また、電断時設定値(図6のSk9およびSk10)の内部機能レジスタへの格納も、LDQ命令で実行される。具体的には、Sk8においてQレジスタに格納された特定値(上位アドレスがF5)と、Sk9およびSk10それぞれにおけるLDQ命令で指定された値(下位アドレス)とに基づいて、RAM破壊診断用固定データおよびRAMパリティ調整用データは、内部機能レジスタ内に格納される。したがって、このような構成によれば、LDQ命令において内部機能レジスタの全てのアドレスを指定してアドレスを特定する構成と比較して、LDQ命令のプログラム容量を削減することができる。 (1-4) Also, storage of the power-off set value (Sk9 and Sk10 in FIG. 6) in the internal function register is also executed by the LDQ instruction. Specifically, based on the specific value (upper address is F5) stored in the Q register in Sk8 and the value (lower address) specified by the LDQ instruction in each of Sk9 and Sk10, RAM destruction diagnostic fixed data The data for RAM parity adjustment are stored in the internal function register. Therefore, according to such a configuration, it is possible to reduce the program capacity of the LDQ instruction as compared with the configuration in which all the addresses of the internal function register are specified to specify the address in the LDQ instruction.
(1−5) また、図3にも示すように、遊技RAM領域の上位アドレスは「F0」であり、該遊技RAM領域には、遊技プログラムで用いるデータが格納される。一方、非遊技プログラムで用いるデータが格納される非遊技RAM領域の上位アドレスは「F3」である。また、図7などにも示したように、起動処理が実行されたときから電断処理が実行されるまでの期間においては、Qレジスタに、「F0」が設定されている。仮に、非遊技プログラムでLDQ命令が用いられた場合には、実際は、上位アドレスが「F3」である非遊技RAM領域にアクセスされるべきであるところ、上位アドレスが「F0」である遊技RAM領域にアクセスされてしまう。そうすると、重要な領域である遊技RAM領域にアクセス(遊技機の設計者が意図しないアクセス)が実行されてしまうことになる。
そこで、遊技プログラムでは、LDQ命令が用いられる一方、非遊技プログラムでは、LDQ命令が用いられないようになっている。したがって、上位アドレスが「F0」である遊技RAM領域に対して、遊技機の設計者が意図しないアクセスが実行されてしまうことを低減できる。
(1-5) Also, as shown in FIG. 3, the upper address of the game RAM area is "F0", and data used in the game program is stored in the game RAM area. On the other hand, the upper address of the non-game RAM area in which the data used in the non-game program is stored is "F3". Further, as shown in FIG. 7 and the like, “F0” is set in the Q register in the period from the time when the start-up process is performed to the time when the power-off process is performed. Temporarily, when the LDQ command is used in a non-gaming program, the upper address is actually "F3", but the gaming RAM area whose upper address is "F0" while the non-gaming RAM area should be accessed. It will be accessed by As a result, access to the game RAM area, which is an important area (access not intended by the designer of the game machine) is performed.
Therefore, while the LDQ command is used in the game program, the LDQ command is not used in the non-game program. Therefore, it is possible to reduce that the designer of the gaming machine does not intend to access the gaming RAM area whose upper address is "F0".
(1−6) また、図3にも示すように、遊技プログラム領域の上位アドレスは「00」であり、該遊技プログラム領域には、遊技プログラムで用いるプログラム(サブルーチン)が格納されている。一方、非遊技プログラムで用いるプログラム(サブルーチン)が格納される非遊技プログラム領域の上位アドレスは「20」である。また、ベクターテーブル領域には、遊技プログラム領域の上位アドレスを特定可能な値(たとえば、「00」)が記憶されている。仮に、非遊技プログラムで特別命令(CALLV命令)が用いられた場合には、実際は、上位アドレスが「20」である非遊技プログラム領域にアクセスされるべきであるところ、上位アドレスが「00」である遊技プログラム領域(遊技プログラムで用いられるプログラム(サブルーチン)が格納されている記憶領域)にアクセスされてしまう。そうすると、非遊技プログラムにおいて、遊技プログラム領域にアクセス(遊技機の設計者が意図しないアクセス)が実行されてしまうことになる。 (1-6) Also, as shown in FIG. 3, the upper address of the gaming program area is "00", and the gaming program area stores a program (subroutine) used in the gaming program. On the other hand, the upper address of the non-game program area in which the program (subroutine) used in the non-game program is stored is "20". Also, in the vector table area, a value (for example, "00") capable of specifying the upper address of the game program area is stored. If a special command (CALLV command) is used in a non-gaming program, the upper address is "00" while the non-gaming program area whose upper address is "20" should actually be accessed. A certain gaming program area (a storage area in which a program (subroutine) used in the gaming program is stored) is accessed. Then, in the non-gaming program, access to the gaming program area (access not intended by the designer of the gaming machine) is performed.
また、RST命令で指定される値に対応する特定アドレスの記憶領域には、遊技プログラムで用いられるプログラム(サブルーチン)が格納されている。仮に、非遊技プログラムで特別命令(RST命令)が用いられた場合には、実際は、非遊技プログラム領域にアクセスされるべきであるところ、遊技プログラムで用いられるプログラム(サブルーチン)が格納されている遊技プログラム領域にアクセスされてしまう。そうすると、非遊技プログラムにおいて、遊技プログラム領域にアクセス(遊技機の設計者が意図しないアクセス)が実行されてしまうことになる。
そこで、遊技プログラムでは、特別命令が用いられる一方、非遊技プログラムでは、特別命令が用いられないようになっている。したがって、遊技プログラム領域に対して、遊技機の設計者が意図しないアクセスが実行されてしまうことを低減できる。
Further, a program (subroutine) used in the game program is stored in the storage area of the specific address corresponding to the value designated by the RST instruction. If a special command (RST command) is used in a non-gaming program, the non-gaming program area is actually to be accessed, but a game (a subroutine) used in the gaming program is stored. The program area is accessed. Then, in the non-gaming program, access to the gaming program area (access not intended by the designer of the gaming machine) is performed.
Therefore, while special instructions are used in game programs, special instructions are not used in non-game programs. Therefore, it is possible to reduce the possibility that the designer of the gaming machine will not perform an access to the gaming program area.
(2−1) また、Qレジスタには、遊技RAM領域へのアクセスが許可されるまでは(たとえば、図7のタイミングT5に示すRAMアクセスが許可されるまでは)、遊技RAM領域とは異なる領域である内部機能レジスタのアドレスを特定可能な特定値(たとえば、内部機能レジスタの上位アドレス「F5」を特定可能な特定値)が記憶される。また、遊技RAM領域へのアクセスが許可された以降(たとえば、図7のタイミングT6に示
すRAMアクセスが許可された以降)は遊技RAM領域のアドレスを特定可能な所定値(たとえば、遊技RAM領域の上位アドレス「F0」を特定可能な所定値)が記憶される。
(2-1) In addition, the Q register is different from the game RAM area until the access to the game RAM area is permitted (for example, until the RAM access shown at timing T5 in FIG. 7 is permitted). A specific value that can specify the address of the internal function register that is an area (for example, a specific value that can specify the upper address “F5” of the internal function register) is stored. Further, after the access to the game RAM area is permitted (for example, after the RAM access shown at timing T6 in FIG. 7 is permitted), a predetermined value (for example, of the game RAM area) which can specify the address of the game RAM area A predetermined value capable of specifying upper address "F0" is stored.
また、遊技RAM領域へのアクセスが許可されるまでの期間(つまり、遊技RAM領域へのアクセスが禁止されている期間)においては、遊技RAM領域は、重要な領域であるといえる。 Further, in a period until access to the game RAM area is permitted (that is, a period in which access to the game RAM area is prohibited), it can be said that the game RAM area is an important area.
仮に、RAMアクセスが許可されるまでの期間(つまり、RAMアクセスが禁止されている期間、たとえば、タイミングT4〜T5までの期間)中に、Qレジスタに所定値(遊技RAM領域の上位アドレス「F0」を示す値)が格納されている場合において、誤動作などによりLDQ命令が実行されてしまう場合がある。この場合には、アクセスが禁止されてしまう遊技RAM領域(重要な領域)にアクセス(設計者が意図しないアクセス)が実行されてしまうことになる。本実施形態では、アクセスが禁止されている遊技RAM領域にアクセスされると、イリーガルアクセスリセットを発生させることで、遊技の進行を不能化させる。したがって、誤動作などによりLDQ命令が実行されてしまうと、不用意に、遊技の進行が不能化されてしまうことになる。 Temporarily, during a period until RAM access is permitted (that is, a period during which RAM access is prohibited, for example, a period from timing T4 to T5), a predetermined value (upper address “F0 of the game RAM area”) is stored in the Q register. In the case where a value indicating “1” is stored, the LDQ instruction may be executed due to a malfunction or the like. In this case, access to the game RAM area (important area) where access is prohibited is performed (access not intended by the designer). In this embodiment, when the game RAM area to which access is prohibited is accessed, the legal access reset is generated to disable the progress of the game. Therefore, if the LDQ command is executed due to a malfunction or the like, the progress of the game is inadvertently disabled.
そこで、本実施形態では、RAMアクセスが許可されるまでは、特定値(内部機能レジスタの上位アドレスを特定可能な値)が記憶される。したがって、RAMアクセスが許可されるまでにおいて、誤動作などによりLDQ命令が実行されてしまっても、遊技RAM領域にはアクセスされないことから、不用意に、遊技の進行が不能化されてしまう可能性を低減できる。 Therefore, in the present embodiment, a specific value (a value capable of specifying the upper address of the internal function register) is stored until RAM access is permitted. Therefore, even if the LDQ command is executed due to a malfunction etc. until the RAM access is permitted, the game RAM area is not accessed, so there is a possibility that the progress of the game is carelessly made. It can be reduced.
なお、変形例として、RAMアクセスが禁止されているときにおいて、遊技RAM領域にアクセスされても「遊技の進行が不能化させる不能化処理」を実行しない構成(以下、「不能化処理非実行構成」という。)としてもよい。このような構成の場合において、RAMアクセスが禁止されているときに、誤動作などによりLDQ命令が実行されることにより遊技RAM領域にアクセスされたときには、該遊技RAM領域内に記憶されているデータが変更されてしまう可能性がある。 It should be noted that as a modification, when RAM access is prohibited, even if the game RAM area is accessed, the configuration that does not execute "disabling processing to disable the progress of the game" (hereinafter referred to as "disabling processing non-execution configuration "It is good." In such a configuration, when the game RAM area is accessed by executing the LDQ command due to a malfunction or the like when the RAM access is prohibited, the data stored in the game RAM area is It may be changed.
これに対し、本実施形態では、RAMアクセスが禁止されているときには、Qレジスタに特定値が設定されている。したがって、不能化処理非実行構成が採用されている遊技機において、誤動作などによりLDQ命令が実行されたとしても、遊技RAM領域にアクセスされてしまうこと可能性を低減できる。 On the other hand, in the present embodiment, when RAM access is prohibited, a specific value is set in the Q register. Therefore, in the gaming machine in which the disabling process non-execution configuration is adopted, the possibility that the game RAM area is accessed can be reduced even if the LDQ instruction is executed due to a malfunction or the like.
(2−2) また、信号領域には、電断検出回路(図示せず)から出力される停電検出信号に係る情報(たとえば、停電検出信号フラグ)が格納される。メイン制御部41は、該停電検出信号に基づいて(たとえば、図4のSa1およびSa2参照)、起動処理を実行する。また、Sa1の入力ポートの信号領域を参照する際には、Sa1AにおいてQレジスタに設定された特定値(信号領域の上位アドレス)と、Sa1AでのLDQ命令により指定された値(信号領域の下位アドレス)とに基づいて信号領域のアドレスを特定する。Sa1においては、該特定したアドレスの領域である信号領域(入力ポートの信号領域)を参照する。したがって、LDQ命令において信号領域の全てのアドレスを指定してアドレスを特定する構成と比較して、Sa1の処理でのLDQ命令のプログラム容量を削減することができる。
(2-2) Further, information (for example, a power failure detection signal flag) related to the power failure detection signal output from the power failure detection circuit (not shown) is stored in the signal region. The
(2−3) また、図4の起動処理において、前記記憶領域に記憶されているデータを用いて、該データが正常であるか否かを判定する判定処理を実行する。本実施形態では、この判定処理は、図4のSa5〜Sa7に示すように、RAM破壊診断用固定データおよびRAMパリティ調整用データを用いてRAM41cを診断する処理である。また、Qレ
ジスタには、この判定処理が実行されるまで、特定値が記憶される(たとえば、図4の例では、Sa7の処理が実行されるまでに特定値が設定される)。したがって、判定処理が実行されるまでに、誤ってLDQ命令が実行された場合であっても、たとえば、遊技RAM領域にアクセスされる可能性を低減できる。
(2-3) Further, in the start-up process of FIG. 4, a determination process of determining whether the data is normal or not is performed using the data stored in the storage area. In the present embodiment, as shown in Sa5 to Sa7 of FIG. 4, this determination process is a process of diagnosing the
また、本実施形態では、判定処理に使用される判定用データ(RAM破壊診断用固定データおよびRAMパリティ調整用データ)は、遊技RAM領域に格納される。したがって、この判定処理が実行されるまで、つまり、遊技RAM領域に格納される判定用データが記憶されているときに、該遊技RAM領域に不本意にアクセスされることにより該判定用データが変更される可能性を低減できる。 Further, in the present embodiment, the determination data (fixed data for RAM destruction diagnosis and data for RAM parity adjustment) used in the determination process is stored in the game RAM area. Therefore, until the determination process is executed, that is, when the determination data stored in the game RAM area is stored, the determination data is changed by unintentionally accessing the game RAM area. It is possible to reduce the possibility of being
(2−4) また、起動時設定値(図4のSa1B)の内部機能レジスタへの格納も、LDQ命令で実行される。具体的には、Sa1AにおいてQレジスタに格納された特定値(上位アドレスがF5)と、該LDQ命令で該N個それぞれについて指定された値(下位アドレス)とに基づいて、該N個の設定値は内部機能レジスタ内のN個の領域それぞれに格納される。したがって、このような構成によれば、LDQ命令において内部機能レジスタの全てのアドレスを指定してアドレスを特定する構成と比較して、LDQ命令のプログラム容量を削減することができる。 (2-4) Further, the storage of the setting value at startup (Sa1B in FIG. 4) in the internal function register is also executed by the LDQ instruction. Specifically, based on the specific value (upper address is F5) stored in the Q register in Sa1A and the value (lower address) specified for each of the N in the LDQ instruction, the N settings are made. The value is stored in each of N regions in the internal function register. Therefore, according to such a configuration, it is possible to reduce the program capacity of the LDQ instruction as compared with the configuration in which all the addresses of the internal function register are specified to specify the address in the LDQ instruction.
(3−1) また、Qレジスタには、遊技RAM領域へのアクセスが禁止されるまでは(たとえば、図7のタイミングT2に示すRAMアクセスが禁止されるまでは)、遊技RAM領域のアドレスを特定可能な所定値(たとえば、遊技RAM領域の上位アドレス「F0」を特定可能な所定値)が記憶される。また、遊技RAM領域へのアクセスが禁止された以降(たとえば、図7のタイミングT2に示すRAMアクセスが禁止された以降)は遊技RAM領域とは異なる領域である内部機能レジスタのアドレスを特定可能な特定値(たとえば、内部機能レジスタの上位アドレス「F5」を特定可能な値)が記憶される。 (3-1) In addition, until the access to the game RAM area is prohibited (for example, until the RAM access shown at timing T2 in FIG. 7 is prohibited), the address of the game RAM area is stored in the Q register. A specifiable predetermined value (for example, a predetermined value capable of specifying the upper address "F0" of the game RAM area) is stored. Further, after the access to the game RAM area is prohibited (for example, after the RAM access shown at timing T2 in FIG. 7 is prohibited), the address of the internal function register which is an area different from the game RAM area can be specified A specific value (for example, a value capable of specifying the upper address "F5" of the internal function register) is stored.
また、遊技RAM領域へのアクセスが禁止された以降においては、遊技RAM領域は、重要な領域であるといえる。 In addition, after access to the game RAM area is prohibited, it can be said that the game RAM area is an important area.
仮に、RAMアクセスが禁止された以降の期間(たとえば、タイミングT2〜T3までの期間)中に、Qレジスタに所定値(遊技RAM領域の上位アドレス「F0」を示す値)が格納されている場合において、誤動作などによりLDQ命令が実行されてしまう場合がある。この場合には、アクセスが禁止されてしまう遊技RAM領域(重要な領域)にアクセス(設計者が意図しないアクセス)が実行されてしまうことになる。本実施形態では、アクセスが禁止されている遊技RAM領域にアクセスされると、遊技の進行を不能化させる。したがって、誤動作などによりLDQ命令が実行されてしまうと、不用意に、遊技の進行が不能化されてしまうことになる。 If a predetermined value (a value indicating the upper address “F0” of the gaming RAM area) is stored in the Q register during a period (for example, a period from timing T2 to T3) after RAM access is prohibited. In some cases, the LDQ instruction may be executed due to a malfunction or the like. In this case, access to the game RAM area (important area) where access is prohibited is performed (access not intended by the designer). In the present embodiment, when the game RAM area to which access is prohibited is accessed, the progress of the game is disabled. Therefore, if the LDQ command is executed due to a malfunction or the like, the progress of the game is inadvertently disabled.
そこで、本実施形態では、RAMアクセスが禁止された以降は、特定値(内部機能レジスタの上位アドレスを特定可能な値)が記憶される。したがって、RAMアクセスが禁止された以降において、誤動作などによりLDQ命令が実行されてしまっても、遊技RAM領域にはアクセスされないことから、不用意に、遊技の進行が不能化されてしまう可能性を低減できる。 Therefore, in the present embodiment, after RAM access is prohibited, a specific value (a value capable of specifying the upper address of the internal function register) is stored. Therefore, after the RAM access is prohibited, even if the LDQ command is executed due to a malfunction or the like, the game RAM area is not accessed, so there is a possibility that the progress of the game is carelessly made. It can be reduced.
なお、RAMアクセスが禁止されているときにおいて、遊技RAM領域にアクセスされても「遊技の進行が不能化させる不能化処理」を実行しない構成(以下、「不能化処理非実行構成」という。)としてもよい。このような構成の場合において、RAMアクセスが禁止されているときに、誤動作などによりLDQ命令が実行されることにより遊技RAM領域にアクセスされたときには、該遊技RAM領域内に記憶されているデータが変更され
てしまう可能性がある。
In addition, when RAM access is prohibited, even if the game RAM area is accessed, a configuration that does not execute "disabling processing to disable the progress of the game" (hereinafter referred to as "disabling processing non-execution configuration"). It may be In such a configuration, when the game RAM area is accessed by executing the LDQ command due to a malfunction or the like when the RAM access is prohibited, the data stored in the game RAM area is It may be changed.
これに対し、本実施形態では、RAMアクセスが禁止されているときには、Qレジスタに特定値が設定されている。したがって、不能化処理非実行構成が採用されている遊技機において、誤動作などによりLDQ命令が実行されたとしても、遊技RAM領域にアクセスされてしまうこと可能性を低減できる。 On the other hand, in the present embodiment, when RAM access is prohibited, a specific value is set in the Q register. Therefore, in the gaming machine in which the disabling process non-execution configuration is adopted, the possibility that the game RAM area is accessed can be reduced even if the LDQ instruction is executed due to a malfunction or the like.
[変形例]
以上、本発明における主な実施の形態を説明してきたが、本発明は、上記の実施の形態に限られず、種々の変形、応用が可能である。以下、本発明に適用可能な上記の実施の形態の変形例について説明する。
[Modification]
As mentioned above, although the main embodiment in this invention was described, this invention is not limited to said embodiment, A various deformation | transformation and application are possible. Hereinafter, modified examples of the above-described embodiment applicable to the present invention will be described.
(1) 本実施形態では、図6の電断処理に示したように、Sk8の特定値のQレジスタへの設定は、Sk9のRAMアクセス禁止フラグの設定前に実行するとして説明した。しかしながら、Sk8の処理は、Sk9の処理の後に実行するようにしてもよい。または、Sk8の処理と、Sk9の処理とは同時に実行するようにしてもよい。つまり、Sk8の処理は、RAM41cへのアクセスが禁止される際に(RAM41cへのアクセスが禁止されるにあたって)、実行される処理である。このような構成であっても、本実施形態と同様の効果を奏する。
(1) In the present embodiment, as shown in the power interruption process of FIG. 6, setting of the specific value of Sk8 in the Q register is described as being performed before setting of the RAM access prohibition flag of Sk9. However, the process of Sk8 may be performed after the process of Sk9. Alternatively, the process of Sk8 and the process of Sk9 may be performed simultaneously. That is, the process of Sk8 is a process that is executed when access to the
(2) 本実施形態では、起動処理において(電断復帰時において)、電断処理内での(電断検出時での)制御状態に復帰させる手法として、遊技RAM領域にバックアップ電源を供給するとともに、図6のSk1およびSk2に示したように、レジスタおよびスタックポインタを退避させるとして説明した。しかしながら、電断検出時の制御状態に復帰させる手法は他の手法を採用してもよい。 (2) In the present embodiment, as a method of returning to the control state (at the time of power failure detection) in the power failure process in the startup process (during power failure recovery), backup power is supplied to the game RAM area In addition, as described in Sk1 and Sk2 of FIG. 6, it has been described that the register and the stack pointer are saved. However, another method may be adopted as a method of returning to the control state at the time of the power interruption detection.
たとえば、電断が検出されたときの制御状態を示すデータのうち、少なくとも一部をバックアップ領域に退避させる構成を採用するようにしてもよい。このような構成を採用した場合において、バックアップ領域は重要な領域であるといえる。したがって、たとえば、所定値をバックアップ領域の上位アドレスを特定可能な値とし、特定値をバックアップ領域とは異なる領域の上位アドレスを特定可能な値とする構成を採用してもよい。このような構成であっても、本実施形態と同様の効果を奏する。 For example, a configuration may be adopted in which at least a part of data indicating the control state when the power failure is detected is saved in the backup area. When such a configuration is adopted, it can be said that the backup area is an important area. Therefore, for example, a configuration may be adopted in which the predetermined value is a value that can identify the upper address of the backup area, and the specific value is a value that can identify the upper address of an area different from the backup area. Even with such a configuration, the same effect as that of the present embodiment can be obtained.
(3) また、図4において、Sa1Aの処理によるQレジスタに特定値が設定されたときから、Sa3Bの処理によるQレジスタに所定値が設定されるときまでの期間(以下、第1期間という。)において、機能設定レジスタを用いた処理として、LDQ命令に基づいて、図4で説明した処理とは別の処理を、図4で説明した処理に加えて実行する、または図4で説明した処理に代替させて実行するようにしてもよい。この場合において、該第1期間中の機能設定レジスタを用いた処理として、LDQ命令(機能設定レジスタの下位アドレスのみ指定する命令)に基づいてM個(Mは2以上の整数)の処理を実行する構成の方が、機能設定レジスタの上位アドレスおよび下位アドレスの双方を指定する命令に基づいて該M個の処理を実行する構成よりもプログラムの容量を削減できる。 (3) Further, in FIG. 4, a period from when a specific value is set in the Q register by the process of Sa1A to when a predetermined value is set in the Q register by the process of Sa3B (hereinafter, referred to as a first period. In addition to the processing described in FIG. 4 based on the LDQ instruction as processing using the function setting register), or the processing described in FIG. It may be executed in place of In this case, M (M is an integer of 2 or more) processing is executed based on the LDQ instruction (an instruction specifying only the lower address of the function setting register) as the process using the function setting register in the first period. The configuration can reduce the program capacity more than the configuration in which the M processes are executed based on an instruction specifying both the upper address and the lower address of the function setting register.
また、図6において、Sk8によるQレジスタに特定値が設定されたときから、ループに入るまでの期間(以下、第2期間という。)において、機能設定レジスタを用いた処理として、LDQ命令に基づいて、図6で説明した処理とは別の処理を、図6で説明した処理に加えて実行する、または図6で説明した処理に代替させて実行するようにしてもよい。この場合において、該第2期間中の機能設定レジスタを用いた処理として、LDQ命令(機能設定レジスタの下位アドレスのみ指定する命令)に基づいてL個(Lは2以上の整数)の処理を実行する構成の方が、機能設定レジスタの上位アドレスおよび下位アドレス
の双方を指定する命令に基づいて該L個の処理を実行する構成よりもプログラムの容量を削減できる。
Further, in FIG. 6, based on the LDQ instruction, as processing using the function setting register in a period from when a specific value is set in the Q register by Sk8 to when it enters a loop (hereinafter referred to as a second period). 6 may be executed in addition to the process described in FIG. 6 or may be executed in place of the process described in FIG. In this case, L (L is an integer of 2 or more) processing is executed based on the LDQ instruction (an instruction specifying only the lower address of the function setting register) as the process using the function setting register in the second period. The configuration can reduce the program capacity more than the configuration in which the L pieces of processing are executed based on an instruction specifying both the upper address and the lower address of the function setting register.
(4) 図7の電断処理の例では、Qレジスタの特定値を設定したタイミングT2でRAMアクセスを禁止するとして説明した。しかしながら、Qレジスタの特定値を設定したタイミングにおいて、他の処理を実行した後に、RAMアクセスを禁止するようにしてもよい。また、図7の起動処理の例では、RAMアクセスを許可したタイミングT6でQレジスタに所定値を設定するとして説明した。しかしながら、RAMアクセスを許可したタイミングにおいて、他の処理を実行した後に、Qレジスタに所定値を設定するようにしてもよい。これらのような構成によれば、他の処理をできつつも、本実施形態と同様の効果を奏する。 (4) In the example of the power-off process in FIG. 7, the RAM access is prohibited at the timing T2 at which the specific value of the Q register is set. However, the RAM access may be inhibited after other processing is performed at the timing when the specific value of the Q register is set. Further, in the example of the start-up process of FIG. 7, it has been described that the predetermined value is set in the Q register at the timing T6 at which the RAM access is permitted. However, a predetermined value may be set in the Q register after other processing is performed at the timing when the RAM access is permitted. According to these configurations, the same effect as the present embodiment can be obtained while performing other processing.
(5) 本実施形態では、遊技RAM領域の上位アドレスを「F0」とし、内部機能レジスタの上位アドレスを「F5」として説明した。しかしながら、遊技RAM領域の上位アドレスおよび内部機能レジスタの上位アドレスは両領域の上位アドレスが異なるものであれば、両領域の少なくとも1の領域の上位アドレスは本実施形態と異なるものとしてもよい。たとえば、遊技RAM領域の上位アドレスを「F1」とし、内部機能レジスタの上位アドレスを「FE」としてもよい。このような構成であっても、本実施形態と同様の効果を奏する。 (5) In the present embodiment, the upper address of the game RAM area is "F0", and the upper address of the internal function register is "F5". However, if the upper addresses of the game RAM area and the upper addresses of the internal function register are different from each other in the upper addresses of both areas, the upper addresses of at least one of the two areas may be different from this embodiment. For example, the upper address of the game RAM area may be "F1" and the upper address of the internal function register may be "FE". Even with such a configuration, the same effect as that of the present embodiment can be obtained.
(6) 本実施形態の起動処理では、起動処理でのSa1およびSa2において、停電検出信号(電源供給が停止されたことを示す信号)を用いた処理(図4のSa1およびSa2参照)を実行するとして説明した。しかしながら、電力供給が停止されたことを示す停電検出信号ではなく、電源供給が開始されたことを示す信号(以下、「電源供給信号」という。)を用いて、起動処理を実行するようにしてもよい。 (6) In the activation process of the present embodiment, processing (see Sa1 and Sa2 in FIG. 4) using the power failure detection signal (signal indicating that the power supply has been stopped) is executed in Sa1 and Sa2 in the activation process. I explained that. However, instead of the power failure detection signal indicating that power supply has been stopped, the start processing is performed using a signal indicating that power supply has been started (hereinafter referred to as "power supply signal"). It is also good.
この電源供給信号を用いた構成である場合には、図4のSa1においては、入力ポートの信号領域(内部機能レジスタ内の領域)には、電源供給信号が入力されたことを示すデータ(電源供給信号フラグ)が設定される。そして、Sa2においては、信号領域において、電源供給信号フラグ格納されたか否かが判断され、該Sa2においてYESと判断された場合には、Sa3Aに進む。このような構成であっても、本実施形態と同様の効果を奏する。 In the configuration using the power supply signal, in Sa1 of FIG. 4, data (power supply) indicating that the power supply signal is input to the signal region (region in the internal function register) of the input port Supply signal flag) is set. Then, in Sa2, it is determined whether or not the power supply signal flag is stored in the signal area, and if it is determined YES in Sa2, the process proceeds to Sa3A. Even with such a configuration, the same effect as that of the present embodiment can be obtained.
(7) 本実施形態では、特別ワークの開始アドレス、重要ワークの開始アドレス、および一般ワークの一部の開始アドレスそれぞれの上位アドレスは、「F0」であるとして説明した。しかしながら、上位アドレスが「F0」となる領域は、他の領域としてもよい。たとえば、この他の領域とは、遊技の進行に応じて、データを読み出したりデータを書き込んだりする領域(特定記憶領域)としてもよい。また、この他の領域は、電断されたときには、該電断時の制御データの少なくとも一部を退避させる(バックアップさせる)領域(特定記憶領域)としてもよい。この場合には、電断復帰時には、該退避されたデータに基づいて該電断時の制御データに復帰させるようにしてもよい。 (7) In the present embodiment, the upper address of each of the start address of the special work, the start address of the important work, and the start address of the part of the general work has been described as “F0”. However, the area where the upper address is "F0" may be another area. For example, this other area may be an area (specific storage area) in which data is read or data is written according to the progress of the game. In addition, this other area may be an area (specific storage area) for saving (backing up) at least a part of control data at the time of the power failure when the power is disconnected. In this case, upon power failure recovery, control data at the time of power failure may be restored based on the saved data.
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。 It should be understood that the embodiments disclosed herein are illustrative and non-restrictive in every respect. The scope of the present invention is indicated not by the above description but by claims, and is intended to include all modifications within the meaning and scope equivalent to claims.
1 スロットマシン、6 MAXBETスイッチ、7 スタートスイッチ、41 メイン制御部、91 サブ制御部。 1 slot machine, 6 MAX BET switch, 7 start switch, 41 main control unit, 91 sub control unit.
Claims (1)
所定記憶領域に記憶されたデータを用いて記憶領域のアドレスを特定し、該特定されたアドレスの記憶領域からデータを読み出す特定命令をプログラムに基づいて実行する命令実行手段と、
前記プログラムで用いるデータが記憶されている特定記憶領域へのアクセスを、前記遊技機への電源供給の停止が検出されたときに禁止する禁止手段とを備え、
前記所定記憶領域には、
前記特定記憶領域へのアクセスが禁止されるまでは前記特定記憶領域のアドレスを特定するために用いられる所定値データが記憶され、
前記特定記憶領域へのアクセスが禁止されるにあたって前記特定記憶領域とは異なる領域のアドレスを特定するために用いられる特定値データが記憶される、遊技機。 A gaming machine capable of playing a game,
An instruction execution unit that specifies an address of a storage area using data stored in a predetermined storage area, and executes a specific instruction that reads data from the storage area of the specified address based on a program;
And a prohibiting means for prohibiting access to a specific storage area in which data used in the program is stored when it is detected that the power supply to the gaming machine is stopped.
In the predetermined storage area,
The predetermined value data used to specify the address of the specific storage area is stored until the access to the specific storage area is prohibited.
A gaming machine in which specific value data used to specify an address of an area different from the specific storage area is stored when access to the specific storage area is prohibited.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017246247A JP7290395B2 (en) | 2017-12-22 | 2017-12-22 | game machine |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017246247A JP7290395B2 (en) | 2017-12-22 | 2017-12-22 | game machine |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2019111057A true JP2019111057A (en) | 2019-07-11 |
JP2019111057A5 JP2019111057A5 (en) | 2021-05-06 |
JP7290395B2 JP7290395B2 (en) | 2023-06-13 |
Family
ID=67221754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017246247A Active JP7290395B2 (en) | 2017-12-22 | 2017-12-22 | game machine |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7290395B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2023023834A (en) * | 2021-08-06 | 2023-02-16 | 株式会社三共 | game machine |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016179074A (en) * | 2015-03-24 | 2016-10-13 | 京楽産業.株式会社 | Game machine |
JP2017070333A (en) * | 2015-10-05 | 2017-04-13 | サミー株式会社 | Game machine |
JP2017140089A (en) * | 2016-02-08 | 2017-08-17 | サミー株式会社 | Game machine |
JP2017158625A (en) * | 2016-03-07 | 2017-09-14 | 株式会社三共 | Game machine |
JP2017164251A (en) * | 2016-03-15 | 2017-09-21 | 株式会社オリンピア | Game machine |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6391291B2 (en) | 2013-05-10 | 2018-09-19 | 株式会社三共 | Game machine |
JP6626266B2 (en) | 2015-04-03 | 2019-12-25 | 株式会社三共 | Gaming machine |
-
2017
- 2017-12-22 JP JP2017246247A patent/JP7290395B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016179074A (en) * | 2015-03-24 | 2016-10-13 | 京楽産業.株式会社 | Game machine |
JP2017070333A (en) * | 2015-10-05 | 2017-04-13 | サミー株式会社 | Game machine |
JP2017140089A (en) * | 2016-02-08 | 2017-08-17 | サミー株式会社 | Game machine |
JP2017158625A (en) * | 2016-03-07 | 2017-09-14 | 株式会社三共 | Game machine |
JP2017164251A (en) * | 2016-03-15 | 2017-09-21 | 株式会社オリンピア | Game machine |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2023023834A (en) * | 2021-08-06 | 2023-02-16 | 株式会社三共 | game machine |
JP7384867B2 (en) | 2021-08-06 | 2023-11-21 | 株式会社三共 | gaming machine |
Also Published As
Publication number | Publication date |
---|---|
JP7290395B2 (en) | 2023-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7290393B2 (en) | game machine | |
JP6793626B2 (en) | Game machine | |
JP5502258B2 (en) | Slot machine | |
JP5906131B2 (en) | Game machine | |
JP5969812B2 (en) | Game machine | |
JP6554398B2 (en) | Slot machine | |
JP6554402B2 (en) | Slot machine | |
JP6111493B2 (en) | Game machine | |
JP2021049021A (en) | Game machine | |
JP5969813B2 (en) | Game machine | |
JP5820333B2 (en) | Game machine | |
JP7290395B2 (en) | game machine | |
JP5757539B2 (en) | Slot machine | |
JP6652365B2 (en) | Gaming machine | |
JP2023158039A (en) | Game machine | |
JP7378177B2 (en) | gaming machine | |
JP6793628B2 (en) | Game machine | |
JP6793627B2 (en) | Game machine | |
JP7290394B2 (en) | game machine | |
JP5906129B2 (en) | Game machine | |
JP5820334B2 (en) | Game machine | |
JP6554399B2 (en) | Slot machine | |
JP5502930B2 (en) | Slot machine | |
JP5740620B2 (en) | Game machine | |
JP6554400B2 (en) | Slot machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201127 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210326 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210914 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211228 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220225 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20220322 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220613 |
|
C60 | Trial request (containing other claim documents, opposition documents) |
Free format text: JAPANESE INTERMEDIATE CODE: C60 Effective date: 20220613 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20220621 |
|
C21 | Notice of transfer of a case for reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C21 Effective date: 20220628 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20220805 |
|
C211 | Notice of termination of reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C211 Effective date: 20220809 |
|
C22 | Notice of designation (change) of administrative judge |
Free format text: JAPANESE INTERMEDIATE CODE: C22 Effective date: 20221108 |
|
C13 | Notice of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: C13 Effective date: 20230124 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230322 |
|
C22 | Notice of designation (change) of administrative judge |
Free format text: JAPANESE INTERMEDIATE CODE: C22 Effective date: 20230411 |
|
C23 | Notice of termination of proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C23 Effective date: 20230425 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230601 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7290395 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |