JP6628963B2 - Gaming machine - Google Patents
Gaming machine Download PDFInfo
- Publication number
- JP6628963B2 JP6628963B2 JP2014251143A JP2014251143A JP6628963B2 JP 6628963 B2 JP6628963 B2 JP 6628963B2 JP 2014251143 A JP2014251143 A JP 2014251143A JP 2014251143 A JP2014251143 A JP 2014251143A JP 6628963 B2 JP6628963 B2 JP 6628963B2
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- reset
- setting
- address
- value
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 claims description 173
- 230000008569 process Effects 0.000 claims description 161
- 238000012545 processing Methods 0.000 claims description 149
- 230000004044 response Effects 0.000 claims description 10
- 230000000670 limiting effect Effects 0.000 claims description 6
- 230000006870 function Effects 0.000 description 57
- 230000008859 change Effects 0.000 description 44
- 230000000737 periodic effect Effects 0.000 description 44
- 238000010586 diagram Methods 0.000 description 35
- 230000000694 effects Effects 0.000 description 32
- 238000001514 detection method Methods 0.000 description 27
- 230000004913 activation Effects 0.000 description 14
- 230000004048 modification Effects 0.000 description 12
- 238000012986 modification Methods 0.000 description 12
- 238000011084 recovery Methods 0.000 description 11
- 230000005856 abnormality Effects 0.000 description 10
- 238000003780 insertion Methods 0.000 description 10
- 230000037431 insertion Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 238000003745 diagnosis Methods 0.000 description 9
- 230000002159 abnormal effect Effects 0.000 description 7
- 125000004122 cyclic group Chemical group 0.000 description 7
- 230000006378 damage Effects 0.000 description 7
- 238000009877 rendering Methods 0.000 description 6
- 230000007704 transition Effects 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 230000007423 decrease Effects 0.000 description 5
- 238000007689 inspection Methods 0.000 description 5
- 239000004973 liquid crystal related substance Substances 0.000 description 5
- 101000999079 Homo sapiens Radiation-inducible immediate-early gene IEX-1 Proteins 0.000 description 4
- 101000605019 Lachesana tarabaevi M-zodatoxin-Lt1a Proteins 0.000 description 4
- 102100036900 Radiation-inducible immediate-early gene IEX-1 Human genes 0.000 description 4
- 101100127659 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) LAM5 gene Proteins 0.000 description 4
- 101150047013 Sp110 gene Proteins 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000005764 inhibitory process Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 238000002360 preparation method Methods 0.000 description 4
- 101001003233 Homo sapiens Immediate early response gene 2 protein Proteins 0.000 description 3
- 101001106523 Homo sapiens Regulator of G-protein signaling 1 Proteins 0.000 description 3
- 102100020702 Immediate early response gene 2 protein Human genes 0.000 description 3
- 102100021269 Regulator of G-protein signaling 1 Human genes 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 3
- 230000001066 destructive effect Effects 0.000 description 3
- 230000005284 excitation Effects 0.000 description 3
- 230000000717 retained effect Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 101000686909 Homo sapiens Resistin Proteins 0.000 description 2
- 102100030783 Myosin light chain kinase 3 Human genes 0.000 description 2
- 101710198035 Myosin light chain kinase, smooth muscle Proteins 0.000 description 2
- 102100024735 Resistin Human genes 0.000 description 2
- 101100532687 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) IRR1 gene Proteins 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000002401 inhibitory effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000009987 spinning Methods 0.000 description 2
- 241000167854 Bourreria succulenta Species 0.000 description 1
- 241000219109 Citrullus Species 0.000 description 1
- 235000012828 Citrullus lanatus var citroides Nutrition 0.000 description 1
- 101100328360 Schizosaccharomyces pombe (strain 972 / ATCC 24843) clr1 gene Proteins 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 235000019693 cherries Nutrition 0.000 description 1
- 230000001678 irradiating effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001012 protector Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000007789 sealing Methods 0.000 description 1
Images
Landscapes
- Slot Machines And Peripheral Devices (AREA)
Description
本発明は、遊技を行うことが可能な遊技機に関する。 The present invention relates to a gaming machine capable of playing a game.
遊技機として、遊技球などの遊技媒体を発射装置によって遊技領域に発射し、遊技領域に設けられている入賞口などの始動入賞領域に遊技媒体が入賞したときに複数種類の識別情報の可変表示が行われるパチンコ遊技機や、所定の賭数を設定し、スタート操作が行われたときに、複数種類の識別情報(例えば、図柄)の可変表示が行われるスロットマシンなどがある。このように識別情報の可変表示を実行可能に構成された遊技機では、可変表示部において識別情報の可変表示の表示結果が所定の表示結果となった場合に、所定の遊技価値(例えば、大当たり状態への移行など)を遊技者に与えるように構成されたものがある。 As a gaming machine, a game device such as a game ball is fired into a game area by a launch device, and a plurality of types of identification information are variably displayed when the game medium wins a start winning area such as a winning opening provided in the game area. And a slot machine that variably displays a plurality of types of identification information (for example, symbols) when a predetermined bet amount is set and a start operation is performed. In the gaming machine configured to be able to execute the variable display of the identification information in this manner, when the display result of the variable display of the identification information becomes a predetermined display result on the variable display unit, a predetermined game value (for example, a jackpot) State transition) to the player.
このような遊技機として、割込ベクタ定義領域に遊技機制御プログラムの割込発生時における割込アドレスを定義する遊技機が知られている(特許文献1)。 As such a gaming machine, there is known a gaming machine that defines an interrupt address when an interrupt of a gaming machine control program occurs in an interrupt vector definition area (Patent Document 1).
しかしながら、特許文献1の遊技機では、割込ベクタ定義領域に意図しない割込アドレスが定義されている場合に、割込が発生するまでは正常な処理が実行されるものの、割込が発生したときに意図しない処理が実行されるおそれがある。
However, in the gaming machine of
本発明は、このような問題点に着目してなされたものであり、意図しない割込処理が実行されることを事前に防止することができる遊技機を提供することを目的とする。 The present invention has been made in view of such a problem, and an object of the present invention is to provide a gaming machine capable of preventing an unintended interrupt process from being executed in advance.
上記課題を解決するために、本発明の遊技機は、
遊技を行うことが可能な遊技機(例えば、スロットマシン1)において、
プログラムを記憶する記憶手段(例えば、ROM208)と、
該記憶手段に記憶されたプログラムに従った処理を実行するマイクロコンピュータ(例えば、図11に示す部分)と、を備え、
プログラムは、割込の発生に応じて実行される割込プログラム(例えば、図12に示す部分)を含み、
前記マイクロコンピュータは、
割込が許可されているときに、該割込にもとづいて割込プログラムに従った処理を実行する割込処理実行手段(例えば、図8及び図9に示す部分)と、
割込の発生を制限する割込制限手段と、
前記記憶手段における割込プログラムのアドレスを記憶可能な記憶領域を有するアドレス記憶手段(例えば、図13に示す部分)と、
前記アドレス記憶手段の記憶領域で記憶しているアドレスが所定の範囲にあるか否かを前記マイクロコンピュータの起動時に判定する判定手段(例えば、図22に示す部分)と、
割込プログラムのアドレスが所定の範囲にないと前記判定手段が判定したときに前記マイクロコンピュータの起動を制限する起動制限手段(例えば、図22に示す部分)とを備え、
前記割込制限手段は、前記記憶手段に記憶されたプログラムにもとづく初期設定処理が開始される前に割込の発生を制限する第1の割込制限手段と、前記記憶手段に記憶されたプログラムにもとづく初期設定処理の開始に際して割込の発生を制限する第2の割込制限手段と、を含む。
この構成によれば、意図しない割込処理が実行されることを事前に防止することができる。
In order to solve the above-mentioned problems, a gaming machine of the present invention
In a gaming machine (for example, slot machine 1) capable of performing a game,
Storage means (for example, ROM 208) for storing a program;
A microcomputer (for example, a portion shown in FIG. 11) that executes processing according to the program stored in the storage means,
The program includes an interrupt program (for example, a portion shown in FIG. 12) executed in response to the occurrence of the interrupt,
The microcomputer includes:
Interrupt processing executing means (for example, portions shown in FIGS. 8 and 9) for executing processing according to an interrupt program based on the interrupt when the interrupt is permitted;
Interrupt limiting means for limiting the occurrence of interrupts;
Address storage means (for example, a portion shown in FIG. 13) having a storage area capable of storing an address of an interrupt program in the storage means;
Determining means (for example, a portion shown in FIG. 22) for determining whether or not an address stored in a storage area of the address storing means is within a predetermined range when the microcomputer is started;
Starting restriction means (for example, a part shown in FIG. 22) for restricting activation of the microcomputer when the determination means determines that the address of the interrupt program is not within a predetermined range;
The interrupt restricting means includes: first interrupt restricting means for restricting occurrence of an interrupt before an initialization process based on a program stored in the storage means is started; and a program stored in the storage means. And a second interrupt restricting means for restricting the occurrence of an interrupt at the start of the initialization processing based on the second setting .
According to this configuration, execution of an unintended interrupt process can be prevented in advance.
プログラムは、電力供給停止信号の入力にもとづいて割込を禁止できないマスク不能割込の発生に応じて実行されるマスク不能割込プログラム(例えば、図12〜図15のNMI割込に関する部分)を含み、
マイクロコンピュータは、マスク不能割込が発生したときに、マスク不能割込プログラムに従った処理を実行するマスク不能割込処理実行手段(例えば、図12〜図15、図32、図34で示すNMI割込に関する部分、[変形例]に示す部分)を備え、
電力供給停止時処理は、マスク不能割込プログラムに従った処理(例えば、[変形例]に示す部分)を含み、
アドレス記憶手段の記憶領域は、マスク不能割込プログラムのアドレス(例えば、図13に示す部分)を含み、
判定手段は、前記アドレス記憶手段の記憶領域で記憶しているマスク不能割込プログラムのアドレスが所定の範囲にあるか否かを前記マイクロコンピュータの起動時に判定し(例えば、[変形例]に示す部分)、
起動制限手段は、マスク不能割込プログラムのアドレスが所定の範囲にないと前記判定手段が判定したときに前記マイクロコンピュータの起動を制限する(例えば、[変形例]に示す部分)。
この構成によれば、意図しない割込処理が実行されることを事前に防止することができる。
The program includes a non-maskable interrupt program (for example, a portion related to the NMI interrupt in FIGS. 12 to 15) that is executed in response to the occurrence of a non-maskable interrupt in which the interrupt cannot be prohibited based on the input of the power supply stop signal. Including
When a non-maskable interrupt occurs, the microcomputer executes a non-maskable interrupt process executing means (for example, the NMI shown in FIGS. 12 to 15, 32, and 34) that executes a process according to the non-maskable interrupt program. Part related to interrupts, part shown in [Modification]),
The power supply stop processing includes processing according to the non-maskable interrupt program (for example, a portion shown in [Modification]),
The storage area of the address storage means contains the address of the non-maskable interrupt program (for example, the portion shown in FIG. 13),
The determining means determines at the time of starting the microcomputer whether or not the address of the non-maskable interrupt program stored in the storage area of the address storage means is within a predetermined range (for example, as shown in [Modification]). part),
The activation restricting means restricts the activation of the microcomputer when the determining means determines that the address of the non-maskable interrupt program is not within a predetermined range (for example, a portion shown in [Modification]).
According to this configuration, execution of an unintended interrupt process can be prevented in advance.
プログラムは、電力供給停止信号の入力にもとづいて割込を禁止できないマスク不能割込の発生に応じて実行されるマスク不能割込プログラム(例えば、図12〜図15のNMI割込に関する部分)を含み、
マイクロコンピュータは、マスク不能割込が発生したときに、マスク不能割込プログラムに従った処理を実行するマスク不能割込処理実行手段(例えば、[変形例]に示す部分)を備え、
電力供給停止時処理は、マスク不能割込プログラムに従った処理(例えば、[変形例]に示す部分)を含み、
マスク不能割込の発生条件が成立してマスク不能割込が発生するまでの期間は、割込の発生条件が成立して割込が発生するまでの期間よりも短い(例えば、[変形例]に示す部分)。
この構成によれば、電力供給停止時処理を好適に実行することができる。
The program includes a non-maskable interrupt program (for example, a portion related to the NMI interrupt in FIGS. 12 to 15) that is executed in response to the occurrence of a non-maskable interrupt in which the interrupt cannot be prohibited based on the input of the power supply stop signal. Including
The microcomputer includes a non-maskable interrupt processing execution means (for example, a portion shown in [Modification]) that executes a process according to a non-maskable interrupt program when an unmaskable interrupt occurs,
The power supply stop processing includes processing according to the non-maskable interrupt program (for example, a portion shown in [Modification]),
The period from when the non-maskable interrupt occurrence condition is satisfied to when the non-maskable interrupt occurs is shorter than the period until the interrupt generation condition is satisfied and the interrupt is generated (for example, [Modification] Part shown).
According to this configuration, it is possible to suitably execute the power supply stop processing.
マイクロコンピュータは、
前記マイクロコンピュータの起動時にユーザプログラムが記憶されている記憶領域を設定する記憶領域設定手段(例えば、図16に示すプログラムエンドアドレスの設定)と、
前記記憶領域設定手段が記憶した記憶領域で記憶しているユーザプログラムに従った処理を実行するユーザプログラム実行手段(例えば、CPU207)と、
前記記憶領域設定手段が設定した記憶領域以外の領域で記憶しているプログラムを前記ユーザプログラム実行手段が呼び出したときに異常制御を実行する異常制御実行手段。(例えば、図21に示す部分)とを備え、
所定の範囲は、少なくともユーザプログラムが記憶されている領域のアドレスを含む(例えば、図22に示す部分)。
この構成によれば、不正なプログラムの実行を防止することができる。
The microcomputer is
Storage area setting means (for example, setting of a program end address shown in FIG. 16) for setting a storage area in which a user program is stored when the microcomputer is started;
User program execution means (for example, CPU 207) for executing processing according to a user program stored in the storage area stored by the storage area setting means;
Abnormality control executing means for executing abnormality control when the user program executing means calls a program stored in an area other than the storage area set by the storage area setting means; (For example, a portion shown in FIG. 21),
The predetermined range includes at least the address of the area where the user program is stored (for example, the portion shown in FIG. 22).
According to this configuration, execution of an unauthorized program can be prevented.
マイクロコンピュータは、
マイクロコンピュータが起動したときに割込を禁止する起動時割込禁止手段(例えば、図5のSa1の処理を行う部分)と、
ユーザプログラムに従った処理を実行するユーザプログラム実行手段(例えば、CPU207)と、
ユーザプログラム実行手段がユーザプログラムに従った処理の実行を開始した後で割込許可手段が割込に関する設定を実行する前に割込を禁止する処理を実行する設定前割込禁止手段(例えば、図5のSa16a、Sa20a、Sa26aの前にSa1の処理を行う部分)とを備えた。
この構成によれば、意図しない割込処理が実行されることを事前に防止することができる。
The microcomputer is
A start-time interrupt prohibiting unit (for example, a part that performs the processing of Sa1 in FIG. 5) that prohibits an interrupt when the microcomputer is started;
A user program executing means (for example, CPU 207) for executing processing according to the user program;
A pre-setting interrupt prohibition unit (for example, executing a process of prohibiting an interrupt after the user program execution unit starts executing the process according to the user program and before the interrupt permission unit executes the setting related to the interrupt (for example, A part that performs the processing of Sa1 before Sa16a, Sa20a, and Sa26a in FIG. 5).
According to this configuration, execution of an unintended interrupt process can be prevented in advance.
マイクロコンピュータは、
マイクロコンピュータの起動時に参照され、かつマイクロコンピュータの機能を設定するためのデータを記憶可能な記憶領域を有するデータ記憶手段(例えば、図12、図14に示す部分)と、
前記データ記憶手段の記憶領域に該データを設定するデータ設定手段(例えば、CPU207)とを備え、
前記データ記憶手段の記憶領域は、該記憶領域に設定された値にもとづいて前記データ設定手段がいずれの機能も設定しない未使用領域を(例えば、乱数回路動作モード設定(関係するシンボル名:HRDMD)においてHEDMDのビット3、システム設定(関係するシンボル名:HSYSCNT)においてHSYSCNTのビット5〜7)含み、
起動制限手段は未使用領域に特定の値が設定されているときにマイクロコンピュータの起動を制限する(例えば、図22に示す部分)。
この構成によれば、意図しない設定がなされることを防止することができる。
The microcomputer is
Data storage means (for example, portions shown in FIGS. 12 and 14) which are referred to when the microcomputer is started and have a storage area capable of storing data for setting functions of the microcomputer;
Data setting means (for example, CPU 207) for setting the data in a storage area of the data storage means,
In the storage area of the data storage means, an unused area in which the data setting means does not set any function based on the value set in the storage area (for example, a random number circuit operation mode setting (related symbol name: HRDMD) ) Includes
The activation restricting means restricts activation of the microcomputer when a specific value is set in the unused area (for example, a portion shown in FIG. 22).
According to this configuration, it is possible to prevent unintended settings from being made.
上記課題を解決するために、本発明の遊技機は、
遊技を行うことが可能な遊技機(例えば、スロットマシン1)において、
プログラムを記憶する記憶手段(例えば、ROM208)と、
該記憶手段に記憶されたプログラムに従った処理を実行するマイクロコンピュータ(例えば、図11に示す部分)と、を備え、
プログラムは、割込の発生に応じて実行される割込プログラム(例えば、図12に示す部分)を含み、
前記マイクロコンピュータは、
割込に関する設定を行う処理を実行した後に割込を許可する処理を実行する割込許可手段(例えば、図5及び図6に示す部分)と、
割込が許可されているときに、該割込にもとづいて割込プログラムに従った処理を実行する割込処理実行手段(例えば、図8及び図9に示す部分)と、
前記記憶手段における割込プログラムのアドレスを記憶可能な記憶領域を有するアドレス記憶手段(例えば、図13に示す部分)と、
前記アドレス記憶手段の記憶領域で記憶しているアドレスが所定の範囲にあるか否かを前記マイクロコンピュータの起動時に判定する判定手段(例えば、図22に示す部分)と、
割込プログラムのアドレスが所定の範囲にないと前記判定手段が判定したときに前記マイクロコンピュータの起動を制限する起動制限手段(例えば、図22に示す部分)とを備えた。
この構成によれば、意図しない割込処理が実行されることを事前に防止することができる。
In order to solve the above-mentioned problems, a gaming machine of the present invention
In a gaming machine (for example, slot machine 1) capable of performing a game,
Storage means (for example, ROM 208) for storing a program;
A microcomputer (for example, a portion shown in FIG. 11) that executes processing according to the program stored in the storage means,
The program includes an interrupt program (for example, a portion shown in FIG. 12) executed in response to the occurrence of the interrupt,
The microcomputer includes:
Interrupt permitting means (for example, portions shown in FIGS. 5 and 6) for executing a process for permitting an interrupt after executing a process for performing a setting relating to an interrupt;
Interrupt processing executing means (for example, portions shown in FIGS. 8 and 9) for executing processing according to an interrupt program based on the interrupt when the interrupt is permitted;
Address storage means (for example, a portion shown in FIG. 13) having a storage area capable of storing an address of an interrupt program in the storage means;
Determining means (for example, a portion shown in FIG. 22) for determining whether or not an address stored in a storage area of the address storing means is within a predetermined range when the microcomputer is started;
A start restricting unit (for example, a part shown in FIG. 22) for restricting the start of the microcomputer when the judging unit judges that the address of the interrupt program is not within a predetermined range.
According to this configuration, execution of an unintended interrupt process can be prevented in advance.
割込許可手段は、割込に関する設定として、所定周期で発生する割込についての時間間隔を指定するとともに、該時間間隔を計測するタイマを初期値から動作開始させる設定を実行する(例えば、図27及び図28に示す部分)。
この構成によれば、意図しない割込処理が実行されることを事前に防止することができる。
The interrupt permitting means specifies, as settings relating to the interrupt, a time interval for an interrupt occurring at a predetermined cycle, and performs a setting for starting a timer for measuring the time interval from an initial value (see FIG. 27 and FIG. 28).
According to this configuration, execution of an unintended interrupt process can be prevented in advance.
マイクロコンピュータは、
割込に関する設定を記憶可能な記憶領域を有する設定内容記憶手段(例えば、図34〜図36に示す部分)と、
前記マイクロコンピュータの起動時に、前記設定内容記憶手段の記憶領域の少なくとも一部に初期設定内容を示す初期値を設定する初期値設定手段(例えば、図23及び図32に示す部分)とを備えた。
この構成によれば、意図しない設定で割込処理が実行されることを事前に防止することができる。
The microcomputer is
Setting content storage means (for example, a portion shown in FIGS. 34 to 36) having a storage area capable of storing settings related to interrupts;
Initial value setting means (for example, portions shown in FIGS. 23 and 32) for setting an initial value indicating initial setting contents in at least a part of a storage area of the setting content storage means when the microcomputer is started. .
According to this configuration, it is possible to prevent in advance that the interrupt process is executed with an unintended setting.
上記課題を解決するために、本発明の遊技機は、
遊技を行うことが可能な遊技機(例えば、スロットマシン1)において、
プログラムを記憶する記憶手段(例えば、ROM208)と、
該記憶手段に記憶されたプログラムに従った処理を実行するマイクロコンピュータ(例えば、図11に示す部分)と、を備え、
プログラムは、割込の発生に応じて実行される割込プログラム(例えば、図12に示す部分)を含み、
前記マイクロコンピュータは、
数値データを更新して出力する数値更新手段(例えば、乱数発生回路42)と、
前記数値更新手段による数値データの更新に関する設定を行う処理を実行した後に割込を許可する処理を実行する割込許可手段(例えば、図5及び図6のSa17、Sa21、Sa27の処理を行う部分)と、
割込が許可されているときに、該割込にもとづいて割込プログラムに従った処理を実行する割込処理実行手段(例えば、図8及び図9に示す部分)と、
前記記憶手段における割込プログラムのアドレスを記憶可能な記憶領域を有するアドレス記憶手段(例えば、図13に示す部分)と、
前記アドレス記憶手段の記憶領域で記憶しているアドレスが所定の範囲にあるか否かを前記マイクロコンピュータの起動時に判定する判定手段(例えば、図22に示す部分)と、
割込プログラムのアドレスが所定の範囲にないと前記判定手段が判定したときに前記マイクロコンピュータの起動を制限する起動制限手段(例えば、図22に示す部分)とを備えた。
この構成によれば、意図しない割込処理が実行されることを事前に防止することができる。
In order to solve the above-mentioned problems, a gaming machine of the present invention
In a gaming machine (for example, slot machine 1) capable of performing a game,
Storage means (for example, ROM 208) for storing a program;
A microcomputer (for example, a portion shown in FIG. 11) that executes processing according to the program stored in the storage means,
The program includes an interrupt program (for example, a portion shown in FIG. 12) executed in response to the occurrence of the interrupt,
The microcomputer includes:
Numerical value updating means (for example, a random number generating circuit 42) for updating and outputting numerical data;
An interrupt permitting unit that executes a process for permitting an interrupt after executing a process for setting a numerical data update by the numerical value updating unit (for example, a part that performs processing of Sa17, Sa21, and Sa27 in FIGS. 5 and 6) )When,
Interrupt processing executing means (for example, portions shown in FIGS. 8 and 9) for executing processing according to an interrupt program based on the interrupt when the interrupt is permitted;
Address storage means (for example, a portion shown in FIG. 13) having a storage area capable of storing an address of an interrupt program in the storage means;
Determining means (for example, a portion shown in FIG. 22) for determining whether or not an address stored in a storage area of the address storing means is within a predetermined range when the microcomputer is started;
A start restricting unit (for example, a part shown in FIG. 22) for restricting the start of the microcomputer when the judging unit judges that the address of the interrupt program is not within a predetermined range.
According to this configuration, execution of an unintended interrupt process can be prevented in advance.
マイクロコンピュータは乱数値となる数値データを生成する乱数回路(例えば、乱数回路212)を備え、
前記乱数回路は、
数値更新手段と、
所定信号の入力にもとづいて前記数値更新手段から出力された数値データを乱数値として取り込んで格納する乱数値格納手段と、
前記乱数値格納手段に乱数値が格納されているときに所定信号の入力があったときは新たな数値データを前記乱数値格納手段に乱数値として取り込んで格納することを可能にする第1設定と、前記乱数値格納手段に乱数値が格納されているときに所定信号の入力があったときは新たな数値データを前記乱数値格納手段に乱数値として取り込んで格納することを不能にする第2設定とのいずれかに設定する乱数値格納設定手段(例えば、[乱数の動作]に示す部分)とを備えた。
この構成によれば、意図しない乱数値を取り込むことを防止することができる。
The microcomputer includes a random number circuit (for example, a random number circuit 212) that generates numerical data that is a random number value,
The random number circuit,
Numerical update means;
Random number storage means for taking in and storing, as a random value, numerical data output from the numerical update means based on an input of a predetermined signal,
A first setting which enables new numerical data to be taken in and stored as a random value in the random value storage means when a predetermined signal is input while the random value is stored in the random value storage means; And when a predetermined signal is input while the random number value is stored in the random number value storage means, it is impossible to take in and store new numerical data as a random number value in the random number value storage means. Random number storage setting means (for example, a portion shown in [Operation of Random Number]) to be set to one of the two settings.
According to this configuration, it is possible to prevent an unintended random number value from being captured.
マイクロコンピュータは、
乱数値となる数値データを生成する乱数回路(例えば、乱数回路212)と、
乱数回路に関する設定を記憶可能な記憶領域を有する設定内容記憶手段(例えば、図12に示す部分)と、
前記マイクロコンピュータの起動時に、前記設定内容記憶手段の記憶領域の少なくとも一部に初期設定内容を示す初期値を設定する初期値設定手段(例えば、図23に示す部分)とを備えた。
この構成によれば、意図しない設定で乱数値となる数値データが更新されることを防止することができる。
The microcomputer is
A random number circuit (for example, a random number circuit 212) for generating numerical data to be a random number value;
Setting content storage means (for example, a portion shown in FIG. 12) having a storage area capable of storing a setting related to the random number circuit;
An initial value setting means (for example, a part shown in FIG. 23) for setting an initial value indicating initial setting contents in at least a part of a storage area of the setting content storage means when the microcomputer is started.
According to this configuration, it is possible to prevent the numerical data that is a random number value from being updated with an unintended setting.
上記課題を解決するために、本発明の遊技機は、
遊技を行うことが可能な遊技機(例えば、スロットマシン1)において、
プログラムを記憶する記憶手段(例えば、ROM208)と、
該記憶手段に記憶されたプログラムに従った処理を実行するマイクロコンピュータ(例えば、図11に示す部分)と、を備え、
プログラムは、割込の発生に応じて実行される割込プログラム(例えば、図12に示す部分)を含み、
前記マイクロコンピュータは、
割込が許可されているときに、該割込にもとづいて割込プログラムに従った処理を実行する割込処理実行手段(例えば、図8及び図9に示す部分)と、
プログラムに従った処理の実行に応じて変動する変動データを記憶する変動データ記憶手段(例えば、RAM41c)と、
初期化条件が成立したときに前記変動データ記憶手段の記憶内容の少なくとも一部を初期化する初期化処理を実行する初期化処理実行手段(例えば、図5及び図6の処理を行う部分)と、
前記初期化処理を実行しているときに割込を禁止する割込禁止手段(例えば、図5のSa1の処理を行う部分)と、
前記記憶手段における割込プログラムのアドレスを記憶可能な記憶領域を有するアドレス記憶手段(例えば、図13に示す部分)と、
前記アドレス記憶手段の記憶領域で記憶しているアドレスが所定の範囲にあるか否かを前記マイクロコンピュータの起動時に判定する判定手段(例えば、図22に示す部分)と、
割込プログラムのアドレスが所定の範囲にないと前記判定手段が判定したときに前記マイクロコンピュータの起動を制限する起動制限手段(例えば、図22に示す部分)とを備えた。
この構成によれば、意図しない割込処理が実行されることを事前に防止することができる。
In order to solve the above-mentioned problems, a gaming machine of the present invention
In a gaming machine (for example, slot machine 1) capable of performing a game,
Storage means (for example, ROM 208) for storing a program;
A microcomputer (for example, a portion shown in FIG. 11) that executes processing according to the program stored in the storage means,
The program includes an interrupt program (for example, a portion shown in FIG. 12) executed in response to the occurrence of the interrupt,
The microcomputer includes:
Interrupt processing executing means (for example, portions shown in FIGS. 8 and 9) for executing processing according to an interrupt program based on the interrupt when the interrupt is permitted;
Fluctuation data storage means (for example, a
Initialization processing executing means (for example, a part performing the processing in FIGS. 5 and 6) for executing an initialization processing for initializing at least a part of the storage contents of the fluctuation data storage means when an initialization condition is satisfied; ,
Interrupt inhibiting means (for example, a part for performing the processing of Sa1 in FIG. 5) for inhibiting an interrupt when the initialization processing is being executed;
Address storage means (for example, a portion shown in FIG. 13) having a storage area capable of storing an address of an interrupt program in the storage means;
Determining means (for example, a portion shown in FIG. 22) for determining whether or not an address stored in a storage area of the address storing means is within a predetermined range when the microcomputer is started;
A start restricting unit (for example, a part shown in FIG. 22) for restricting the start of the microcomputer when the judging unit judges that the address of the interrupt program is not within a predetermined range.
According to this configuration, execution of an unintended interrupt process can be prevented in advance.
所定の記憶領域は未使用領域(例えば、図19に示す部分)を含み、
初期化条件として複数の条件(例えば、初期化1〜4の条件)を設定し、
データ制御手段は、成立した初期化条件の種類に応じて未使用領域を含む該記憶領域のデータを初期化する(例えば、[初期化について]で示す部分)。
この構成によれば、意図しない割込処理が実行されることを事前に防止することができる。
The predetermined storage area includes an unused area (for example, a part shown in FIG. 19),
A plurality of conditions (for example, the conditions of
The data control unit initializes the data of the storage area including the unused area according to the type of the established initialization condition (for example, a portion indicated by [about initialization]).
According to this configuration, execution of an unintended interrupt process can be prevented in advance.
マイクロコンピュータは、外部にデータを出力するためのデータ出力処理を実行する外部データ出力処理手段(例えば、メイン制御部41)を備え、
割込禁止手段は、外部データ出力処理手段がデータ出力処理を実行しているときに割込を禁止する(例えば、図10のSm3の前に割込禁止を実行する部分)。
この構成によれば、意図しないデータが出力されることを防止することができる。
The microcomputer includes external data output processing means (for example, a main control unit 41) for executing data output processing for outputting data to the outside,
The interrupt prohibiting unit prohibits the interrupt when the external data output processing unit is executing the data output process (for example, a portion that executes the interrupt prohibition before Sm3 in FIG. 10).
According to this configuration, it is possible to prevent output of unintended data.
なお、本発明は、本発明の請求項に記載された発明特定事項のみを有するものであって良いし、本発明の請求項に記載された発明特定事項とともに該発明特定事項以外の構成を有するものであっても良い。 Note that the present invention may have only the matters specifying the invention described in the claims of the present invention, or may have configurations other than the matters specifying the invention together with the matters specifying the invention described in the claims of the present invention. It may be something.
[スロットマシンの構成例]
図1に示すように、本実施の形態のスロットマシン1は、前面が開口する筐体1aと、この筐体1aの側端に回動自在に枢支された前面扉1bと、から構成されている。
[Slot machine configuration example]
As shown in FIG. 1, the
図2に示すように、本実施の形態のスロットマシン1の筐体1aの内部には、外周に複数種の図柄が配列されたリール2L、2C、2R(以下、左リール、中リール、右リール)が水平方向に並設されており、図1に示すように、これらリール2L、2C、2Rに配列された図柄のうち連続する3つの図柄が前面扉1bに設けられた透視窓3から見えるように配置されている。
As shown in FIG. 2, inside the
図3に示すように、リール2L、2C、2Rの外周部には、それぞれ「黒7」、「網7(図中網掛け7)」、「白7」、「BAR」、「リプレイ」、「プラム」、「スイカ」、「チェリー」、「ベル」、「オレンジ」といった互いに識別可能な複数種類の図柄が所定の順序で、それぞれ21個ずつ描かれている。リール2L、2C、2Rの外周部に描かれた図柄は、前面扉1bのリールパネル1c略中央に設けられた透視窓3において各々上中下三段に表示される。
As shown in FIG. 3, "black 7", "net 7 (hatched in the figure)", "white 7", "BAR", "replay", A plurality of types of mutually identifiable symbols such as “plum”, “watermelon”, “cherry”, “bell”, and “orange” are drawn in a predetermined order, each of which includes 21 symbols. The symbols drawn on the outer peripheries of the
各リール2L、2C、2Rは、各々対応して設けられリールモータ32L、32C、32R(図4参照)によって回転させることで、各リール2L、2C、2Rの図柄が透視窓3に連続的に変化しつつ表示されるとともに、各リール2L、2C、2Rの回転を停止させることで、透視窓3に3つの連続する図柄が表示結果として導出表示されるようになっている。
The
リール2L、2C、2Rの内側には、リール2L、2C、2Rそれぞれに対して、基準位置を検出するリールセンサ33L、33C、33Rと、リール2L、2C、2Rを背面から照射するリールLED55と、が設けられている。また、リールLED55は、リール2L、2C、2Rの連続する3つの図柄に対応する12のLEDからなり、各図柄をそれぞれ独立して照射可能とされている。
Inside the
前面扉1bにおける各リール2L,2C,2Rに対応する位置には、リール2L,2C,2Rを前面側から透視可能とする横長長方形状の透視窓3が設けられており、該透視窓3を介して遊技者側から各リール2L,2C,2Rが視認できるようになっている。
At a position corresponding to each of the
前面扉1bには、メダルを投入可能なメダル投入部4、メダルが払い出されるメダル払出口9、クレジット(遊技者所有の遊技用価値として記憶されているメダル数)を用いて、その範囲内において遊技状態に応じて定められた規定数の賭数のうち最大の賭数(本実施の形態ではいずれの遊技状態においても3)を設定する際に操作されるMAXBETスイッチ6、クレジットとして記憶されているメダルおよび賭数の設定に用いたメダルを精算する(クレジットおよび賭数の設定に用いた分のメダルを返却させる)際に操作される精算スイッチ10、ゲームを開始する際に操作されるスタートスイッチ7、リール2L、2C、2Rの回転を各々停止する際に操作されるストップスイッチ8L、8C、8R、演出に用いるための演出用スイッチ56が遊技者により操作可能にそれぞれ設けられている。
In the front door 1b, a
なお、本実施の形態では、回転を開始した3つのリール2L、2C、2Rのうち、最初に停止するリールを第1停止リールと称し、また、その停止を第1停止、その停止操作を第1停止操作(または第1停止)と称する。同様に、2番目に停止するリールを第2停止リールと称し、また、その停止を第2停止、その停止操作を第2停止操作(または第2停止)と称する。また、3番目に停止するリールを第3停止リールと称し、また、その停止を第3停止あるいは最終停止、その停止操作を第3停止操作(または第3停止)と称する。
In the present embodiment, of the three
また、前面扉1bには、クレジットとして記憶されているメダル枚数が表示されるクレジット表示器11、入賞の発生により払い出されたメダル枚数やエラー発生時にその内容を示すエラーコード等が表示される遊技補助表示器12、賭数が1設定されている旨を点灯により報知する1BETLED14、賭数が2設定されている旨を点灯により報知する2BETLED15、賭数が3設定されている旨を点灯により報知する3BETLED16、メダルの投入が可能な状態を点灯により報知する投入要求LED17、スタートスイッチ7の操作によるゲームのスタート操作が有効である旨を点灯により報知するスタート有効LED18、ウェイト(前回のゲーム開始から一定期間経過していないためにリールの回転開始を待機している状態)中である旨を点灯により報知するウェイト中LED19、後述するリプレイゲーム中である旨を点灯により報知するリプレイ中LED20が設けられた遊技用表示部13が設けられている。
On the front door 1b, a
MAXBETスイッチ6の内部には、MAXBETスイッチ6の操作による賭数の設定操作が有効である旨を点灯により報知するBETスイッチ有効LED21(図4参照)が設けられており、ストップスイッチ8L、8C、8Rの内部には、該当するストップスイッチ8L、8C、8Rによるリールの停止操作が有効である旨を点灯により報知する左、中、右停止有効LED22L、22C、22R(図4参照)がそれぞれ設けられている。
Inside the
また、前面扉1bにおけるストップスイッチ8L、8C、8Rの下方には、スロットマシン1のタイトルや後述する配当表1などが印刷された下部パネル1dが設けられている。
Below the stop switches 8L, 8C, 8R on the front door 1b, a
前面扉1bの内側には、所定のキー操作により後述するエラー状態および後述する打止状態を解除するためのリセット操作を検出するリセットスイッチ23、後述する設定値の変更中や設定値の確認中にその時点の設定値が表示される設定値表示器24、後述のBB終了時に打止状態(リセット操作がなされるまでゲームの進行が規制される状態)に制御する打止機能の有効/無効を選択するための打止スイッチ36a、後述のBB終了時に自動精算処理(クレジットとして記憶されているメダルを遊技者の操作によらず精算(返却)する処理)に制御する自動精算機能の有効/無効を選択するための自動精算スイッチ36b、メダル投入部4から投入されたメダルの流路を、筐体1a内部に設けられた後述のホッパータンク34a(図2参照)側またはメダル払出口9側のいずれか一方に選択的に切り替えるための流路切替ソレノイド30、メダル投入部4から投入され、ホッパータンク34a側に流下したメダルを検出する投入メダルセンサ31を有するメダルセレクタ(図示略)、前面扉1bの開放状態を検出するドア開放検出スイッチ25(図4参照)が設けられている。
Inside the front door 1b, a
図2に示すように、筐体1a内部には、前述したリール2L、2C、2R、リールモータ32L、32C、32R、各リール2L、2C、2Rのリール基準位置をそれぞれ検出可能なリールセンサ33L、33C、33R(図4参照)からなるリールユニット2、外部出力信号を出力するための外部出力基板1000、メダル投入部4から投入されたメダルを貯留するホッパータンク34a、ホッパータンク34aに貯留されたメダルをメダル払出口9より払い出すためのホッパーモータ34b、ホッパーモータ34bの駆動により払い出されたメダルを検出する払出センサ34cからなるホッパーユニット34、電源ボックス100が設けられている。
As shown in FIG. 2, a reel sensor 33L capable of detecting the reel reference positions of the
ホッパーユニット34の側部には、ホッパータンク34aから溢れたメダルが貯留されるオーバーフロータンク35が設けられている。オーバーフロータンク35の内部には、貯留された所定量のメダルを検出可能な高さに設けられた左右に離間する一対の導電部材からなる満タンセンサ35aが設けられており、導電部材がオーバーフロータンク35内に貯留されたメダルを介して接触することにより導電したときに内部に貯留されたメダル貯留量が所定量以上となったこと、すなわちオーバーフロータンクが満タン状態となったことを検出できるようになっている。
On the side of the
電源ボックス100の前面には、設定変更状態または設定確認状態に切り替えるための設定キースイッチ37、通常時においてはエラー状態や打止状態を解除するためのリセットスイッチとして機能し、設定変更状態においては後述する内部抽選の当選確率(出玉率)の設定値を変更するための設定スイッチとして機能するリセット/設定スイッチ38、電源をon/offする際に操作される電源スイッチ39が設けられている。
On the front face of the
本実施の形態のスロットマシン1においてゲームを行う場合には、まず、メダルをメダル投入部4から投入するか、あるいはクレジットを使用して賭数を設定する。クレジットを使用するにはMAXBETスイッチ6を操作すれば良い。遊技状態に応じて定められた規定数の賭数が設定されると、入賞ラインLN(図1参照)が有効となり、スタートスイッチ7の操作が有効な状態、すなわち、ゲームが開始可能な状態となる。本実施の形態では、規定数の賭数として遊技状態に関わらず3枚が定められて規定数の賭数が設定されると入賞ラインLNが有効となる。なお、遊技状態に対応する規定数のうち最大数を超えてメダルが投入された場合には、その分はクレジットに加算される。
When playing a game in the
入賞ラインとは、各リール2L、2C、2Rの透視窓3に表示された図柄の組み合わせが入賞図柄の組み合わせであるかを判定するために設定されるラインである。本実施の形態では、図1に示すように、リール2Lの中段、リール2Cの中段、リール2Rの中段、すなわち中段に水平方向に並んだ図柄に跨って設定された入賞ラインLNのみが入賞ラインとして定められている。なお、本実施の形態では、1本の入賞ラインのみを適用しているが、複数の入賞ラインを適用しても良い。
The winning line is a line that is set to determine whether the combination of the symbols displayed in the
また、本実施の形態では、入賞ラインLNに入賞を構成する図柄の組み合わせが揃ったことを認識しやすくするために、入賞ラインLNとは別に、無効ラインLM1〜4を設定している。無効ラインLM1〜4は、これら無効ラインLM1〜4に揃った図柄の組み合わせによって入賞が判定されるものではなく、入賞ラインLNに特定の入賞を構成する図柄の組み合わせが揃った際に、無効ラインLM1〜4のいずれかに入賞ラインLNに揃った場合に入賞となる図柄の組み合わせ(例えば、ベル−ベル−ベル)が揃う構成とすることで、入賞ラインLNに特定の入賞を構成する図柄の組み合わせが揃ったことを認識しやすくするものである。本実施の形態では、図1に示すように、リール2Lの上段、リール2Cの上段、リール2Rの上段、すなわち上段に水平方向に並んだ図柄に跨って設定された無効ラインLM1、リール2Lの下段、リール2Cの下段、リール2Rの下段、すなわち下段に水平方向に並んだ図柄に跨って設定された無効ラインLM2、リール2Lの上段、リール2Cの中段、リール2Rの下段、すなわち右下がりに並んだ図柄に跨って設定された無効ラインLM3、リール2Lの下段、リール2Cの中段、リール2Rの上段、すなわち右上がりに並んだ図柄に跨って設定された無効ラインLM4の4種類が無効ラインLMとして定められている。
Further, in the present embodiment, in order to make it easy to recognize that the combination of the symbols constituting the prize is arranged on the prize line LN, the invalid lines LM1 to LM4 are set separately from the prize line LN. The invalid lines LM1 to LM4 do not determine the winning based on the combination of the symbols aligned with the invalid lines LM1 to LM4. When the combination of the symbols constituting the specific prize is arranged on the winning line LN, the invalid lines are invalidated. When a combination of symbols (for example, bell-bell-bell) that wins when the winning line LN is aligned with any of the LM1 to LM4 is arranged, a symbol forming a specific winning on the winning line LN is formed. This is to make it easy to recognize that the combination is complete. In the present embodiment, as shown in FIG. 1, the upper line of the
ゲームが開始可能な状態でスタートスイッチ7を操作すると、各リール2L、2C、2Rが回転し、各リール2L、2C、2Rの図柄が連続的に変動する。この状態でいずれかのストップスイッチ8L、8C、8Rを操作すると、対応するリール2L、2C、2Rの回転が停止し、透視窓3に表示結果が導出表示される。
When the
そして全てのリール2L、2C、2Rが停止されることで1ゲームが終了し、入賞ラインLNに予め定められた図柄の組み合わせ(以下、役とも呼ぶ)が各リール2L、2C、2Rの表示結果として停止した場合には入賞が発生し、その入賞に応じて定められた枚数のメダルが遊技者に対して付与され、クレジットに加算される。また、クレジットが上限数(本実施の形態では50)に達した場合には、メダルが直接メダル払出口9(図1参照)から払い出されるようになっている。また、入賞ラインLNに、遊技状態の移行を伴う図柄の組み合わせが各リール2L、2C、2Rの表示結果として停止した場合には図柄の組み合わせに応じた遊技状態に移行するようになっている。
When one of the
なお、本実施形態では、スタートスイッチ7の操作が有効な状態でスタートスイッチ7の操作が検出されたときにゲームが開始し、全てのリールが停止したときにゲームが終了する。また、ゲームを実行するための1単位の制御(ゲーム制御)は、前回のゲームの終了に伴う全ての制御が完了したときに開始し、当該ゲームの終了に伴う全ての制御が完了したときに終了する。
In the present embodiment, the game starts when the operation of the
また、本実施の形態におけるスロットマシン1にあっては、ゲームが開始されて各リール2L、2C、2Rが回転して図柄の変動が開始した後、いずれかのストップスイッチ8L、8C、8Rが操作されたときに、当該ストップスイッチ8L、8C、8Rに対応するリールの回転が停止して図柄が停止表示される。ストップスイッチ8L、8C、8Rの操作から対応するリール2L、2C、2Rの回転を停止するまでの最大停止遅延時間は190ms(ミリ秒)である。
Further, in the
リール2L、2C、2Rは、1分間に80回転し、80×21(1リール当たりの図柄コマ数)=1680コマ分の図柄を変動させるので、190msの間では最大で4コマの図柄を引き込むことができることとなる。つまり、停止図柄として選択可能なのは、ストップスイッチ8L、8C、8Rが操作されたときに表示されている図柄と、そこから4コマ先までにある図柄、合計5コマ分の図柄である。
The
このため、例えば、ストップスイッチ8L、8C、8Rのいずれかが操作されたときに当該ストップスイッチに対応するリールの下段に表示されている図柄を基準とした場合、当該図柄から4コマ先までの図柄を下段に表示させることができるため、リール2L、2C、2R各々において、ストップスイッチ8L、8Rのうちいずれかが操作されたときに当該ストップスイッチに対応するリールの中段に表示されている図柄を含めて5コマ以内に配置されている図柄を入賞ラインLNに表示させることができる。
Therefore, for example, when one of the stop switches 8L, 8C, and 8R is operated and the symbol displayed on the lower row of the reel corresponding to the stop switch is used as a reference, the symbol from the symbol to four frames ahead Since the symbol can be displayed in the lower row, when one of the stop switches 8L, 8R is operated in each of the
図4は、スロットマシン1の構成を示すブロック図である。スロットマシン1には、図4に示すように、遊技制御基板40、演出制御基板90、電源基板101が設けられており、遊技制御基板40によって遊技状態が制御され、演出制御基板90によって遊技状態に応じた演出が制御され、電源基板101によってスロットマシン1を構成する電気部品の駆動電源が生成され、各部に供給される。
FIG. 4 is a block diagram showing a configuration of the
電源基板101には、外部からAC100Vの電源が供給されるとともに、このAC100Vの電源からスロットマシン1を構成する電気部品の駆動に必要な直流電圧が生成され、遊技制御基板40および遊技制御基板40を介して接続された演出制御基板90に供給されるようになっている。また、後述するメイン制御部41からサブ制御部91へのコマンド伝送ラインと、遊技制御基板40から演出制御基板90に対して電源を供給する電源供給ラインと、が一系統のケーブルおよびコネクタを介して接続されており、これらケーブルと各基板とを接続するコネクタ同士が全て接続されることで演出制御基板90側の各部が動作可能となり、かつメイン制御部41からのコマンドを受信可能な状態となる。このため、メイン制御部41からコマンドを伝送するコマンド伝送ラインが演出制御基板90に接続されている状態でなければ、演出制御基板90側に電源が供給されず、演出制御基板90側のみが動作してしまうことがない。
A power supply of AC100V is externally supplied to the
また、電源基板101には、前述したホッパーモータ34b、払出センサ34c、満タンセンサ35a、設定キースイッチ37、リセット/設定スイッチ38、電源スイッチ39が接続されている。
Further, the
遊技制御基板40には、前述したMAXBETスイッチ6、スタートスイッチ7、ストップスイッチ8L、8C、8R、精算スイッチ10、リセットスイッチ23、打止スイッチ36a、自動精算スイッチ36b、投入メダルセンサ31、ドア開放検出スイッチ25、リールセンサ33L、33C、33Rが接続されているとともに、電源基板101を介して前述した払出センサ34c、満タンセンサ35a、設定キースイッチ37、リセット/設定スイッチ38が接続されており、これら接続されたスイッチ類の検出信号が入力されるようになっている。
The game control board 40 includes the
また、遊技制御基板40には、前述したクレジット表示器11、遊技補助表示器12、ペイアウト表示器13、1〜3BETLED14〜16、投入要求LED17、スタート有効LED18、ウェイト中LED19、リプレイ中LED20、BETスイッチ有効LED21、左、中、右停止有効LED22L、22C、22R、設定値表示器24、流路切替ソレノイド30、リールモータ32L、32C、32Rが接続されているとともに、電源基板101を介して前述したホッパーモータ34bが接続されており、これら電気部品は、遊技制御基板40に搭載された後述のメイン制御部41の制御に基づいて駆動されるようになっている。
In addition, the game control board 40 includes the above-mentioned
遊技制御基板40には、メイン制御部41、乱数発生回路42、サンプリング回路43、スイッチ検出回路44、モータ駆動回路45、ソレノイド駆動回路46、LED駆動回路47、電断検出回路48、リセット回路49が搭載されている。
The game control board 40 includes a
メイン制御部41は、1チップマイクロコンピュータにて構成され、メインCPU41a、ROM41b、RAM41c、I/Oポート41d、乱数発生回路42を備えている。メイン制御部41は、ROM41bに記憶されたプログラムを実行して、遊技の進行に関する処理を行うととともに、遊技制御基板40に搭載された制御回路の各部を直接的または間接的に制御する。
The
乱数発生回路42は、所定数のパルスを発生するたびにカウントアップして値を更新するカウンタによって構成され、サンプリング回路43は、乱数発生回路42がカウントしている数値を取得する。乱数発生回路42は、乱数の種類毎にカウントする数値の範囲が定められており、本実施の形態では、その範囲として0〜65535が定められている。メインCPU41aは、その処理に応じてサンプリング回路43に指示を送ることで、乱数発生回路42が示している数値を乱数値として取得する(以下、この機能をハードウェア乱数機能という)。後述する内部抽選用の乱数は、ハードウェア乱数機能により抽出した乱数をそのまま使用するのではなく、ソフトウェアにより加工して使用する。また、メインCPU41aは、前述のタイマ割込処理(メイン)により、特定のレジスタの値を更新し、こうして更新された数値を乱数として取得する機能も有する(以下、この機能をソフトウェア乱数機能という)。
The random
スイッチ検出回路44は、遊技制御基板40に直接または電源基板101を介して接続されたスイッチ類から入力された検出信号を取り込んでメイン制御部41に伝送する。モータ駆動回路45は、メイン制御部41から出力されたモータ駆動信号をリールモータ32L、32C、32Rに伝送する。ソレノイド駆動回路46は、メイン制御部41から出力されたソレノイド駆動信号を流路切替ソレノイド30に伝送する。LED駆動回路は、メイン制御部41から出力されたLED駆動信号を遊技制御基板40に接続された各種表示器やLEDに伝送する。電断検出回路48は、スロットマシン1に供給される電源電圧を監視し、電圧低下を検出したときに、その旨を示す電圧低下信号をメイン制御部41に対して出力する。リセット回路49は、電源投入時または電源遮断時などの電源が不安定な状態においてメイン制御部41にシステムリセット信号を与える。
The
メイン制御部41のCPU41aは、ROMから読み出したプログラムを実行することにより、スロットマシン1におけるゲームの進行を制御するための処理などを実行する。
The CPU 41a of the
このように、メイン制御部41では、CPU41aがROM41bに格納されているプログラムにしたがって制御を実行するので、以下、メイン制御部41(又はCPU41a)が実行する(又は処理を行う)ということは、具体的には、CPU41aがプログラムにしたがって制御を実行することである。このことは、遊技制御基板40以外の他の基板に搭載されているマイクロコンピュータについても同様である。
As described above, in the
メイン制御部41が備えるRAM41cは、ゲーム制御用のワークエリアを提供する。ここで、RAM41cの少なくとも一部は、バックアップ電源によってバックアップされているバックアップRAMであれば良い。すなわち、スロットマシンへの電力供給が停止しても、所定期間はRAM41cの少なくとも一部の内容が保存される。なお、本実施の形態では、RAM41cの全ての領域がバックアップRAMとされており、スロットマシンへの電力供給が停止しても、所定期間はRAM41cの全ての内容が保存される。
The
メイン制御部41が備えるROM41bには、ゲームの進行を制御するために用いられる各種の選択用データ、テーブルデータなどが格納される。例えば、ROM41bには、CPU41aが各種の判定や決定、設定を行うために用意された複数の判定テーブルや決定テーブル、設定テーブルなどを構成するデータが記憶されている。また、ROM41bには、CPU41aが遊技制御基板40から各種の制御コマンドとなる制御信号を送信するために用いられる複数のコマンドテーブルを構成するテーブルデータなどが記憶されている。
The
メイン制御部41が備えるRAM41cには、スロットマシン1におけるゲームの進行などを制御するために用いられる各種のデータを保持する領域として、遊技制御用データ保持エリアが設けられている。RAM41cとしては、例えばDRAMが使用されており、記憶しているデータ内容を維持するためのリフレッシュ動作が必要になる。CPU41aには、このリフレッシュ動作を行うためのリフレッシュレジスタが内蔵されている。例えば、リフレッシュレジスタは8ビットからなり、そのうち下位7ビットはCPU41aがROM41bから命令フェッチするごとに自動的にインクリメントされる。したがって、リフレッシュレジスタにおける格納値の更新は、CPU41aにおける1命令の実行時間ごとに行われることになる。
In the
メイン制御部41は、サブ制御部91に各種のコマンドを送信する。メイン制御部41からサブ制御部91へ送信されるコマンドは一方向のみで送られ、サブ制御部91からメイン制御部41へ向けてコマンドが送られることはない。
The
メイン制御部41は、遊技制御基板40に接続された各種スイッチ類の検出状態が入力ポートから入力される。そしてメイン制御部41は、これら入力ポートから入力される各種スイッチ類の検出状態に応じて段階的に移行する基本処理を実行する。
The
また、メイン制御部41は、割込の発生により基本処理に割り込んで割込処理を実行できるようになっている。本実施の形態では、一定時間間隔(本実施の形態では、約0.56ms)毎に後述するタイマ割込処理(メイン)を実行する。
Further, the
また、メイン制御部41は、割込処理の実行中に他の割込を禁止するように設定されているとともに、複数の割込が同時に発生した場合には、予め定められた順位によって優先して実行する割込が設定されている。なお、割込処理の実行中に他の割込要因が発生し、割込処理が終了してもその割込要因が継続している状態であれば、その時点で新たな割込が発生することとなる。
In addition, the
演出制御基板90には、演出用スイッチ56が接続されており、この演出用スイッチ56の検出信号が入力されるようになっている。
The
演出制御基板90には、スロットマシン1の前面扉1bに配置された液晶表示器51(図1参照)、演出効果LED52、スピーカ53、54、前述したリールLED55等の演出装置が接続されており、これら演出装置は、演出制御基板90に搭載された後述のサブ制御部91による制御に基づいて駆動されるようになっている。
The
なお、本実施の形態では、演出制御基板90に搭載されたサブ制御部91により、液晶表示器51、演出効果LED52、スピーカ53、54、リールLED55等の演出装置の出力制御が行われる構成であるが、サブ制御部91とは別に演出装置の出力制御を直接的に行う出力制御部を演出制御基板90または他の基板に搭載し、サブ制御部91がメイン制御部41からのコマンドに基づいて演出装置の出力パターンを決定し、サブ制御部91が決定した出力パターンに基づいて出力制御部が演出装置の出力制御を行う構成としても良く、このような構成では、サブ制御部91および出力制御部の双方によって演出装置の出力制御が行われることとなる。
In the present embodiment, the
また、本実施の形態では、演出装置として液晶表示器51、演出効果LED52、スピーカ53、54、リールLED55を例示しているが、演出装置は、これらに限られず、例えば、機械的に駆動する表示装置や機械的に駆動する役モノなどを演出装置として適用しても良い。
Further, in the present embodiment, the
演出制御基板90には、メイン制御部41と同様にサブCPU91a、ROM91b、RAM91c、I/Oポート91dを備えたマイクロコンピュータにて構成され、演出の制御を行うサブ制御部91、演出制御基板90に接続された液晶表示器51の表示制御を行う表示制御回路92、演出効果LED52、リールLED55の駆動制御を行うLED駆動回路93、スピーカ53、54からの音声出力制御を行う音声出力回路94、電源投入時またはサブCPU91aからの初期化命令が一定時間入力されないときにサブCPU91aにリセット信号を与えるリセット回路95、演出制御基板90に接続された演出用スイッチ56から入力された検出信号を検出するスイッチ検出回路96、日付情報および時刻情報を含む時間情報を出力する時計装置97、スロットマシン1に供給される電源電圧を監視し、電圧低下を検出したときに、その旨を示す電圧低下信号をサブCPU91aに対して出力する電断検出回路98、その他の回路等、が搭載されており、サブCPU91aは、遊技制御基板40から送信されるコマンドを受けて、演出を行うための各種の制御を行うとともに、演出制御基板90に搭載された制御回路の各部を直接的または間接的に制御する。
The
リセット回路95は、遊技制御基板40においてメイン制御部41にシステムリセット信号を与えるリセット回路49よりもリセット信号を解除する電圧が低く定められており、電源投入時においてサブ制御部91は、メイン制御部41よりも早い段階で起動するようになっている。一方で、電断検出回路98は、遊技制御基板40においてメイン制御部41に電圧低下信号を出力する電断検出回路48よりも電圧低下信号を出力する電圧が低く定められており、電断時においてサブ制御部91は、メイン制御部41よりも遅い段階で停電を検知し、後述する電断処理(サブ)を行うこととなる。
The
サブ制御部91は、メイン制御部41と同様に、割込機能を備えており、メイン制御部41からのコマンド受信時に割込を発生させて、メイン制御部41から送信されたコマンドを取得し、バッファに格納するコマンド受信割込処理を実行する。また、サブ制御部91は、システムクロックの入力数が一定数に到達する毎、すなわち一定間隔毎に割込を発生させて後述するタイマ割込処理(サブ)を実行する。
The
また、サブ制御部91は、メイン制御部41とは異なり、コマンドの受信に基づいて割込が発生した場合には、タイマ割込処理(サブ)の実行中であっても、当該処理に割り込んでコマンド受信割込処理を実行し、タイマ割込処理(サブ)の契機となる割込が同時に発生してもコマンド受信割込処理を最優先で実行するようになっている。
Further, unlike the
また、サブ制御部91にも、停電時においてバックアップ電源が供給されており、バックアップ電源が供給されている間は、RAM91cに記憶されているデータが保持されるようになっている。すなわち、スロットマシンへの電力供給が停止しても、所定期間はRAM91cの少なくとも一部の内容が保存される。なお、本実施の形態では、RAM91cの全ての領域がバックアップRAMとされており、スロットマシンへの電力供給が停止しても、所定期間はRAM91cの全ての内容が保存される。なお、本実施の形態では、RAM91cの全ての領域がバックアップRAMとされており、スロットマシンへの電力供給が停止しても、所定期間はRAM91cの全ての内容が保存される。
The backup power is also supplied to the
[設定値について]
本実施の形態のスロットマシン1は、設定値に応じてメダルの払出率が変わるものである。詳しくは、後述する内部抽選において設定値に応じた当選確率を用いることにより、メダルの払出率が変わるようになっている。設定値は1〜6の6段階からなり、6が最も払出率が高く、5、4、3、2、1の順に値が小さくなるほど払出率が低くなる。すなわち設定値として6が設定されている場合には、遊技者にとって最も有利度が高く、5、4、3、2、1の順に値が小さくなるほど有利度が段階的に低くなる。
[Settings]
In the
設定値を変更するためには、設定キースイッチ37をon状態としてからスロットマシン1の電源をonする必要がある。設定キースイッチ37をon状態として電源をonすると、設定値表示器24にRAM41cから読み出された設定値が表示値として表示され、リセット/設定スイッチ38の操作による設定値の変更操作が可能な設定変更状態に移行する。設定変更状態において、リセット/設定スイッチ38が操作されると、設定値表示器24に表示された表示値が1ずつ更新されていく(設定6からさらに操作されたときは、設定1に戻る)。そして、スタートスイッチ7が操作されると表示値を設定値として確定する。そして、設定キースイッチ37がoffされると、確定した表示値(設定値)がメイン制御部41のRAM41cに格納され、遊技の進行が可能な状態に移行する。
In order to change the set value, it is necessary to turn on the power of the
また、設定値を確認するためには、ゲーム終了後、賭数が設定されていない状態で設定キースイッチ37をon状態とすれば良い。このような状況で設定キースイッチ37をon状態とすると、設定値表示器24にRAM41cから読み出された設定値が表示されることで設定値を確認可能な設定確認状態に移行する。設定確認状態においては、ゲームの進行が不能であり、設定キースイッチ37をoff状態とすることで、設定確認状態が終了し、ゲームの進行が可能な状態に復帰することとなる。
Further, in order to confirm the set value, after the game is over, the setting
本実施の形態のスロットマシン1においては、メイン制御部41は、タイマ割込処理(メイン)を実行する毎に、電断検出回路48からの電圧低下信号が検出されているか否かを判定する停電判定処理を行い、停電判定処理において電圧低下信号が検出されていると判定した場合に、電断処理(メイン)を実行する。電断処理(メイン)では、RAM41cにいずれかのビットが1となる破壊診断用データ(本実施の形態では、5AH)、すなわち0以外の特定のデータを格納するとともに、RAM41cの全ての領域に格納されたデータに基づくRAMパリティが0となるようにRAMパリティ調整用データを計算し、RAM41cに格納する処理を行うようになっている。なお、RAMパリティとはRAM41cの該当する領域(本実施の形態では、全ての領域)の各ビットに格納されている値の排他的論理和として算出される値である。このため、RAM41cの全ての領域に格納されたデータに基づくRAMパリティが0であれば、RAMパリティ調整用データは0となり、RAM41cの全ての領域に格納されたデータに基づくRAMパリティが1であれば、RAMパリティ調整用データは1となる。
In the
そして、メイン制御部41は、システムリセットによるかユーザリセットによるかに関わらず、その起動時においてRAM41cの全ての領域に格納されたデータに基づいてRAMパリティを計算するとともに、破壊診断用データの値を確認し、RAMパリティが0であり、かつ破壊診断用データの値も正しいことを条件に、RAM41cに記憶されているデータに基づいてメイン制御部41の処理状態を電断前の状態に復帰させるが、RAMパリティが0でない場合(1の場合)や破壊診断用データの値が正しくない場合には、RAM異常と判定し、RAM異常エラーコードをレジスタにセットしてRAM異常エラー状態に制御し、遊技の進行を不能化させるようになっている。なお、RAM異常エラー状態は、通常のエラー状態と異なり、リセットスイッチ23やリセット/設定スイッチ38を操作しても解除されないようになっており、前述した設定変更状態において新たな設定値が設定されるまで解除されることがない。
The
なお、本実施の形態では、RAM41cに格納されている全てのデータが停電時においてもバックアップ電源により保持されるとともに、メイン制御部41は、電源投入時においてRAM41cのデータが正常であると判定した場合に、RAM41cの格納データに基づいて電断前の制御状態に復帰する構成であるが、RAM41cに格納されているデータのうち停電時において制御状態の復帰に必要なデータのみをバックアップし、電源投入時においてバックアップされているデータに基づいて電断前の制御状態に復帰する構成としても良い。
In the present embodiment, all data stored in the
また、電源投入時において電断前の制御状態に復帰させる際に、全ての制御状態を電断前の制御状態に復帰させる必要はなく、遊技者に対して不利益とならない最低限の制御状態を復帰させる構成であれば良く、例えば、入力ポートの状態などを全て電断前の状態に復帰させる必要はない。 In addition, when returning to the control state before the power failure when the power is turned on, it is not necessary to return all the control states to the control state before the power failure, and the minimum control state that does not disadvantage the player It is not necessary to restore all the states of the input ports to the state before the power failure, for example.
[初期化について]
次に、メイン制御部41のRAM41cの初期化について説明する。メイン制御部41のRAM41cの格納領域は、重要ワーク、非保存ワーク、一般ワーク、特別ワーク、未使用領域、スタック領域に区分されている。
[About initialization]
Next, initialization of the
重要ワークは、各種表示器やLEDの表示用データ、I/Oの入出力データ、遊技時間の計時カウンタ等、初期化すると不都合があるデータに加え、後述するRTフラグおよびRT残りゲーム数が格納されるワークである。非保存ワークは、各種スイッチ類の状態を保持するワークであり、起動時にRAM41cのデータが破壊されているか否かに関わらず必ず値が設定されることとなる。一般ワークは、停止制御テーブル、停止図柄、メダルの払出枚数、BB中のメダル払出総数、後述する遊技状態フラグ等、BB終了時に初期化可能なデータが格納されるワークである。特別ワークは、各種ソフトウェア乱数等、設定開始前にのみ初期化されるデータが格納されるワークである。未使用領域は、RAM41cの格納領域のうち使用していない領域であり、後述する複数の初期化条件のいずれか1つでも成立すれば初期化されることとなる。スタック領域は、メイン制御部41のレジスタから退避したデータが格納される領域であり、このうちの未使用スタック領域は、未使用領域と同様に、後述する複数の初期化条件のいずれか1つでも成立すれば初期化されることとなるが、使用中スタック領域は、プログラムの続行のため、初期化されることはない。
The important work stores data that is inconvenient to be initialized, such as various display devices, LED display data, I / O input / output data, and a game time counter, and an RT flag and the number of remaining RT games described later. Work. The unsaved work is a work that holds the state of various switches, and a value is always set at the time of startup, regardless of whether data in the
本実施の形態においてメイン制御部41は、設定キースイッチ37がonの状態での起動時、RAM異常エラー発生時、BB終了時、設定キースイッチ37がoffの状態での起動時でRAM41cのデータが破壊されていないとき、1ゲーム終了時の5つからなる初期化条件が成立した際に、各初期化条件に応じて初期化される領域の異なる4種類の初期化を行う。
In the present embodiment, the
初期化1は、起動時において設定キースイッチ37がonの状態であり、設定変更状態へ移行する場合において、その前に行う初期化、またはRAM異常エラー発生時に行う初期化であり、初期化1では、RAM41cの格納領域のうち、重要ワークおよび使用中スタック領域を除く全ての領域(未使用領域および未使用スタック領域を含む)、すなわち非保存ワークから未使用スタック領域までの領域が初期化される。初期化2は、BB終了時に行う初期化であり、初期化2では、RAM41cの格納領域のうち、一般ワーク、未使用領域および未使用スタック領域、すなわち一般ワークから未使用スタック領域までの領域が初期化される。初期化3は、起動時において設定キースイッチ37がoffの状態であり、かつRAM41cのデータが破壊されていない場合において行う初期化であり、初期化3では、非保存ワーク、未使用領域および未使用スタック領域が初期化される。初期化4は、1ゲーム終了時に行う初期化であり、初期化4では、RAM41cの格納領域のうち、未使用領域および未使用スタック領域が初期化される。
なお、本実施の形態では、後述する初期設定処理(図5及び図6参照)において初期化1及び初期化3を行う前に割込を禁止しているが、初期化2を行うときはBB終了時に割込を禁止してから初期化2を行い、初期化1を行うときは1ゲームの終了時に割込を禁止してから初期化1を行っている。また、本実施の形態では、初期化1を設定変更状態の移行前に行っているが、設定変更状態の終了時に行ったり、設定変更状態移行前、設定変更状態終了時の双方で行うようにしても良い。
In the present embodiment, the interrupt is prohibited before the
このように本実施の形態では、電源投入時などにRAM異常エラーが発生した場合には、初期化1が実行され、それ以前の制御状態が初期化されることとなるが、この際、重要ワークに割り当てられてられたRTフラグやRT残りゲーム数は初期化されることなく保持されるようになっている。一方で、一般ワークに割り当てられた遊技状態フラグについては、初期化1が実行されることに伴って初期化されることとなる。
As described above, in the present embodiment, when a RAM abnormality error occurs at the time of power-on or the like, the
[内部抽選について]
本実施の形態のスロットマシン1は、前述のように遊技状態(通常、内部中、BB(RB))に応じて設定可能な賭数の規定数が定められており、遊技状態に応じて定められた規定数の賭数が設定されたことを条件にゲームを開始させることが可能となる。なお、本実施の形態では、遊技状態に応じた規定数の賭数が設定された時点で、入賞ラインLNが有効化される。
[Internal lottery]
In the
本実施の形態のスロットマシン1は、全てのリール2L、2C、2Rが停止した際に、有効化された入賞ラインLN(以下では、有効化された入賞ラインLNを単に入賞ラインLNと呼ぶ)に役と呼ばれる図柄の組合せが揃うと入賞となる。役は、同一図柄の組合せであっても良いし、異なる図柄を含む組合せであっても良い。入賞となる役の種類は、遊技状態に応じて定められているが、大きく分けて、メダルの払い出しを伴う小役と、賭数の設定を必要とせずに次のゲームを開始可能となる再遊技役(以下、「リプレイ」と称することもある)と、遊技者にとって有利な遊技状態への移行を伴う特別役(以下、「ボーナス」と称することもある)と、がある。以下では、小役と再遊技役をまとめて一般役とも呼ぶ。遊技状態に応じて定められた各役の入賞が発生するためには、後述する内部抽選に当選して、当該役の当選フラグがRAMに設定されている必要がある。
In the
なお、これら各役の当選フラグのうち、小役および再遊技役の当選フラグは、当該フラグが設定されたゲームにおいてのみ有効とされ、次のゲームでは無効となるが、特別役の当選フラグは、当該フラグにより許容された役の組合せが揃うまで有効とされ、許容された役の組合せが揃ったゲームにおいて無効となる。すなわち特別役の当選フラグが一度当選すると、例え、当該フラグにより許容された役の組合せを揃えることができなかった場合にも、その当選フラグは無効とされずに、次のゲームへ持ち越されることとなる。 In addition, among the winning flags of each of these roles, the winning flag of the small role and the replaying role is valid only in the game in which the flag is set, and is invalid in the next game. The combination is enabled until the combination of the permitted combinations is completed by the flag, and is invalid in the game in which the combination of the permitted combinations is completed. That is, once the winning flag of the special role is won, even if the combination of the roles permitted by the flag cannot be aligned, the winning flag is not invalidated and is carried over to the next game. It becomes.
内部抽選は、上記した各役への入賞を許容するか否かを、全てのリール2L、2C、2Rの表示結果が導出表示される以前に(実際には、スタートスイッチ7の検出時)決定するものである。内部抽選では、まず、スタートスイッチ7の検出時に内部抽選用の乱数値(0〜65535の整数)を取得する。詳しくは、RAM41cに割り当てられた乱数値格納ワークの値を同じくRAM41cに割り当てられた抽選用ワークに設定する。そして、遊技状態および特別役の持ち越しの有無に応じて定められた各役について、抽選用ワークに格納された数値データと、遊技状態を特定するための遊技状態フラグの値、後述するRTを特定するためのRTフラグの値、賭数および設定値に応じて定められた各役の判定値数に応じて行われる。なお、特別役の持ち越しとは、内部抽選において特別役に当選したゲームで特別役が入賞しなかった場合に、特別役の当選状態を次ゲーム以降に持ち越し、特別役が入賞するまで特別役の当選状態を維持することである。
In the internal lottery, it is determined whether or not the winning of each of the above-mentioned roles is permitted before the display results of all the
内部抽選では、内部抽選の対象となる役、現在の遊技状態フラグ値、RTフラグ値および設定値に対応して定められた判定値数を、内部抽選用の乱数値(抽選用ワークに格納された数値データ)に順次加算し、加算の結果がオーバーフローしたときに、当該役に当選したものと判定される。このため、判定値数の大小に応じた確率(判定値数/65536)で役が当選することとなる。 In the internal lottery, a random number value for internal lottery (stored in a lottery work) is determined based on the role to be subjected to the internal lottery, the current game state flag value, the RT flag value, and the number of determination values determined corresponding to the set value. Are sequentially added to each other, and when the result of the addition overflows, it is determined that the winning combination has been won. Therefore, the winning combination is determined based on the probability (the number of judgment values / 65536) according to the magnitude of the number of judgment values.
そして、いずれかの役の当選が判定された場合には、当選が判定された役に対応する当選フラグをRAM41cに割り当てられた内部当選フラグ格納ワークに設定する。内部当選フラグ格納ワークは、2バイトの格納領域にて構成されており、そのうちの上位バイトが、特別役の当選フラグが設定される特別役格納ワークとして割り当てられ、下位バイトが、一般役の当選フラグが設定される一般役格納ワークとして割り当てられている。詳しくは、特別役が当選した場合には、当該特別役が当選した旨を示す特別役の当選フラグを特別役格納ワークに設定し、一般役格納ワークに設定されている当選フラグをクリアする。また、一般役が当選した場合には、当該一般役が当選した旨を示す一般役の当選フラグを一般役格納ワークに設定する。なお、いずれの役および役の組合せにも当選しなかった場合には、一般役格納ワークのみクリアする。
When the winning of any of the winning combinations is determined, the winning flag corresponding to the winning-determined winning combination is set in the internal winning flag storing work assigned to the
[リールの停止制御について]
次に、図7のSd3におけるリール回転処理において実行するリール2L、2C、2Rの停止制御について説明する。
[Reel stop control]
Next, stop control of the
メイン制御部41は、リールの回転が開始したとき、およびリールが停止し、かつ未だ回転中のリールが残っているときに、ROM41bに格納されているテーブルインデックスおよびテーブル作成用データを参照して、回転中のリール別に停止制御テーブルを作成する。そして、ストップスイッチ8L、8C、8Rのうち、回転中のリールに対応するいずれかの操作が有効に検出されたときに、該当するリールの停止制御テーブルを参照し、参照した停止制御テーブルの滑りコマ数に基づいて、操作されたストップスイッチ8L、8C、8Rに対応するリール2L、2C、2Rの回転を停止させる制御を行う。
The
テーブルインデックスには、内部抽選による当選フラグの設定状態(以下、内部当選状態と呼ぶ)別に、テーブルインデックスを参照する際の基準アドレスから、テーブル作成用データが格納された領域の先頭アドレスを示すインデックスデータが格納されているアドレスまでの差分が登録されている。これにより内部当選状態に応じた差分を取得し、基準アドレスに対してその差分を加算することで該当するインデックスデータを取得することが可能となる。なお、役の当選状況が異なる場合でも、同一の制御が適用される場合においては、インデックスデータとして同一のアドレスが格納されており、このような場合には、同一のテーブル作成用データを参照して、停止制御テーブルが作成されることとなる。 In the table index, an index indicating a head address of an area in which table creation data is stored from a reference address when referencing the table index, for each setting state of a winning flag by an internal lottery (hereinafter, referred to as an internal winning state). The difference up to the address where the data is stored is registered. As a result, it is possible to acquire a difference corresponding to the internal winning state and add the difference to the reference address to acquire the corresponding index data. Even if the winning status of the role is different, if the same control is applied, the same address is stored as the index data. In such a case, the same table creation data is referred to. Thus, a stop control table is created.
テーブル作成用データは、停止操作位置に応じた滑りコマ数を示す停止制御テーブルと、リールの停止状況に応じて参照すべき停止制御テーブルのアドレスと、からなる。 The table creation data includes a stop control table indicating the number of sliding frames according to the stop operation position, and an address of the stop control table to be referred to according to the reel stop state.
リールの停止状況に応じて参照される停止制御テーブルは、全てのリールが回転しているか、左リールのみ停止しているか、中リールのみ停止しているか、右リールのみ停止しているか、左、中リールが停止しているか、左、右リールが停止しているか、中、右リールが停止しているか、によって異なる場合があり、更に、いずれかのリールが停止している状況においては、停止済みのリールの停止位置によっても異なる場合があるので、それぞれの状況について、参照すべき停止制御テーブルのアドレスが回転中のリール別に登録されており、テーブル作成用データの先頭アドレスに基づいて、それぞれの状況に応じて参照すべき停止制御テーブルのアドレスが特定可能とされ、この特定されたアドレスから、それぞれの状況に応じて必要な停止制御テーブルを特定できるようになっている。なお、リールの停止状況や停止済みのリールの停止位置が異なる場合でも、同一の停止制御テーブルが適用される場合においては、停止制御テーブルのアドレスとして同一のアドレスが登録されているものもあり、このような場合には、同一の停止制御テーブルが参照されることとなる。 The stop control table referred to according to the reel stop status indicates whether all reels are rotating, only the left reel is stopped, only the middle reel is stopped, only the right reel is stopped, the left, It may differ depending on whether the middle reel is stopped, the left and right reels are stopped, or the middle and right reels are stopped. The stop control table address to be referred to for each situation is registered for each spinning reel, and based on the start address of the table creation data, The address of the stop control table to be referred to according to the situation can be specified. From the specified address, it is necessary according to each situation. And to be able to identify the stop control table. Even if the stop status of the reels or the stop positions of the stopped reels are different, when the same stop control table is applied, the same address may be registered as the address of the stop control table. In such a case, the same stop control table is referred to.
停止制御テーブルは、停止操作が行われたタイミング別の滑りコマ数を特定可能なデータである。本実施の形態では、リールモータ32L、32C、32Rに、168ステップ(0〜167)の周期で1周するステッピングモータを用いている。すなわちリールモータ32L、32C、32Rを168ステップ駆動させることでリール2L、2C、2Rが1周することとなる。そして、リール1周に対して16ステップ(1図柄が移動するステップ数)毎に分割した21の領域(コマ)が定められており、これらの領域には、リール基準位置から0〜20の領域番号が割り当てられている。一方、1リールに配列された図柄数も21であり、各リールの図柄に対して、リール基準位置から0〜20の図柄番号が割り当てられているので、0番図柄から20番図柄に対して、それぞれ0〜20の領域番号が順に割り当てられていることとなる。そして、停止制御テーブルには、領域番号別の滑りコマ数が所定のルールで圧縮して格納されており、停止制御テーブルを展開することによって領域番号別の滑りコマ数を取得できるようになっている。
The stop control table is data that can specify the number of sliding frames at each timing when the stop operation is performed. In the present embodiment, the
前述のようにテーブルインデックスおよびテーブル作成用データを参照して作成される停止制御テーブルは、領域番号に対応して、各領域番号に対応する領域が停止基準位置(本実施の形態では、透視窓3の下段図柄の領域)に位置するタイミング(リール基準位置からのステップ数が各領域番号のステップ数の範囲に含まれるタイミング)でストップスイッチ8L、8C、8Rの操作が検出された場合の滑りコマ数がそれぞれ設定されたテーブルである。
As described above, in the stop control table created with reference to the table index and the table creation data, the area corresponding to each area number is set at the stop reference position (in the present embodiment, the see-through
次に、停止制御テーブルの作成手順について説明すると、まず、リール回転開始時においては、そのゲームの内部当選状態に応じたテーブル作成用データの先頭アドレスを取得する。具体的には、まずテーブルインデックスを参照し、内部当選状態に対応するインデックスデータを取得し、そして取得したインデックスデータに基づいてテーブル作成用データを特定し、特定したテーブル作成用データから全てのリールが回転中の状態に対応する各リールの停止制御テーブルのアドレスを取得し、取得したアドレスに格納されている各リールの停止制御テーブルを展開して全てのリールについて停止制御テーブルを作成する。 Next, the procedure for creating the stop control table will be described. First, at the start of reel rotation, the start address of table creation data according to the internal winning state of the game is acquired. Specifically, first, the table index is referred to, index data corresponding to the internal winning state is obtained, and table creation data is specified based on the obtained index data, and all reels are identified from the specified table creation data. Acquires the address of the stop control table of each reel corresponding to the rotating state, and develops the stop control table of each reel stored at the acquired address to create a stop control table for all reels.
また、いずれか1つのリールが停止したとき、またはいずれか2つのリールが停止したときには、リール回転開始時に取得したインデックスデータ、すなわちそのゲームの内部当選状態に応じたテーブル作成用データの先頭アドレスに基づいてテーブル作成用データを特定し、特定したテーブル作成用データから停止済みのリールおよび当該リールの停止位置の領域番号に対応する未停止リールの停止制御テーブルのアドレスを取得し、取得したアドレスに格納されている各リールの停止制御テーブルを展開して未停止のリールについて停止制御テーブルを作成する。 When any one of the reels stops or any two of the reels stop, the index data acquired at the start of the reel rotation, that is, the start address of the table creation data according to the internal winning state of the game. The table creation data is identified based on the table creation data, and the stopped reel and the stop control table address of the unstopped reel corresponding to the area number of the stop position of the reel are acquired from the identified table creation data. The stop control table of each stored reel is expanded to create a stop control table for unstopped reels.
次に、メイン制御部41がストップスイッチ8L、8C、8Rのうち、回転中のリールに対応するいずれかの操作を有効に検出したときに、該当するリールに表示結果を導出させる際の制御について説明すると、ストップスイッチ8L、8C、8Rのうち、回転中のリールに対応するいずれかの操作を有効に検出すると、停止操作を検出した時点のリール基準位置からのステップ数に基づいて停止操作位置の領域番号を特定し、停止操作が検出されたリールの停止制御テーブルを参照し、特定した停止操作位置の領域番号に対応する滑りコマ数を取得する。そして、取得した滑りコマ数分リールを回転させて停止させる制御を行う。具体的には、停止操作を検出した時点のリール基準位置からのステップ数から、取得した滑りコマ数引き込んで停止させるまでのステップ数を算出し、算出したステップ数分リールを回転させて停止させる制御を行う。これにより、停止操作が検出された停止操作位置の領域番号に対応する領域から滑りコマ数分先の停止位置となる領域番号に対応する領域が停止基準位置(本実施の形態では、透視窓3の下段図柄の領域)に停止することとなる。
Next, when the
本実施の形態のテーブルインデックスには、一の遊技状態における一の内部当選状態に対応するインデックスデータとして1つのアドレスのみが格納されており、更に、一のテーブル作成用データには、一のリールの停止状況(および停止済みのリールの停止位置)に対応する停止制御テーブルの格納領域のアドレスとして1つのアドレスのみが格納されている。すなわち一の遊技状態における一の内部当選状態に対応するテーブル作成用データ、およびリールの停止状況(および停止済みのリールの停止位置)に対応する停止制御テーブルが一意的に定められており、これらを参照して作成される停止制御テーブルも、一の遊技状態における一の内部当選状態、およびリールの停止状況(および停止済みのリールの停止位置)に対して一意となる。このため、遊技状態、内部当選状態、リールの停止状況(および停止済みのリールの停止位置)の全てが同一条件となった際に、同一の停止制御テーブル、すなわち同一の制御パターンに基づいてリールの停止制御が行われることとなる。 In the table index of the present embodiment, only one address is stored as index data corresponding to one internal winning state in one gaming state, and one table creation data includes one reel. Only one address is stored as the address of the storage area of the stop control table corresponding to the stop state (and the stopped position of the stopped reel). That is, table creation data corresponding to one internal winning state in one gaming state, and a stop control table corresponding to a reel stop state (and a stopped reel stop position) are uniquely defined. Is also unique with respect to one internal winning state in one game state and a reel stop state (and a stopped reel stop position). Therefore, when all of the gaming state, the internal winning state, and the reel stop state (and the stopped reel stop position) are the same, the reels are controlled based on the same stop control table, that is, the same control pattern. Is performed.
また、本実施の形態では、滑りコマ数として0〜4の値が定められており、停止操作を検出してから最大4コマ図柄を引き込んでリールを停止させることが可能である。すなわち停止操作を検出した停止操作位置を含め、最大5コマの範囲から図柄の停止位置を指定できるようになっている。また、1図柄分リールを移動させるのに1コマの移動が必要であるので、停止操作を検出してから最大4図柄を引き込んでリールを停止させることが可能であり、停止操作を検出した停止操作位置を含め、最大5図柄の範囲から図柄の停止位置を指定できることとなる。 Further, in the present embodiment, a value of 0 to 4 is defined as the number of sliding frames, and it is possible to stop the reel by drawing a maximum of 4 frame symbols after detecting the stop operation. In other words, the stop position of the symbol can be specified from a maximum of five frames including the stop operation position where the stop operation is detected. Further, since it is necessary to move one frame to move the reel for one symbol, it is possible to draw up to four symbols and stop the reel after detecting the stop operation. The stop position of the symbol can be designated from a range of up to five symbols including the operation position.
本実施の形態では、いずれかの役に当選している場合には、当選役を入賞ラインLNに4コマの範囲で最大限引き込み、当選していない役が入賞ラインLNに揃わないように引き込む滑りコマ数が定められた停止制御テーブルを作成し、リールの停止制御を行う一方、いずれの役にも当選していない場合には、いずれの役も揃わない滑りコマ数が定められた停止制御テーブルを作成し、リールの停止制御を行う。これにより、停止操作が行われた際に、入賞ラインLNに最大4コマの引込範囲で当選している役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、当選していない役は、最大4コマの引込範囲でハズシて停止させる制御が行われることとなる。 In the present embodiment, when any of the winning combinations has been won, the winning combination is drawn to the winning line LN within the range of four frames as much as possible, and the winning combination is drawn so as not to be aligned with the winning line LN. Creates a stop control table in which the number of sliding frames is determined, and performs stop control of the reels. If none of the roles are elected, the stop control in which the number of sliding frames in which none of the roles are aligned is determined. A table is created and reel stop control is performed. As a result, when the stop operation is performed, if the winning combination in the pay-in line LN within a pull-in range of up to four frames can be aligned and stopped, a control for aligning and stopping the winning combination is performed. In the case of a winning combination, control is performed to stop the machine in a pull-in range of a maximum of four frames.
特別役が前ゲーム以前から持ち越されている状態で小役が当選した場合など、特別役と小役が同時に当選している場合には、当選した小役を入賞ラインLNに4コマの範囲で最大限に引き込むように滑りコマ数が定められているとともに、当選した小役を入賞ラインLNに最大4コマの範囲で引き込めない停止操作位置については、当選した特別役を入賞ラインLNに4コマの範囲で最大限に引き込むように滑りコマ数が定められた停止制御テーブルを作成し、リールの停止制御を行う。これにより、停止操作が行われた際に、入賞ラインLNに最大4コマの引込範囲で当選している小役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、入賞ラインLNに最大4コマの引込範囲で当選している小役を引き込めない場合には、入賞ラインLNに最大4コマの引込範囲で当選している特別役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、当選していない役は、4コマの引込範囲でハズシて停止させる制御が行われることとなる。すなわちこのような場合には、特別役よりも小役を入賞ラインLNに揃える制御が優先され、小役を引き込めない場合にのみ、特別役を入賞させることが可能となる。なお、特別役と小役を同時に引き込める場合には、小役のみを引き込み、特別役と同時に小役が入賞ラインLNに揃わないようになっている。 If the special role and the small role are elected at the same time, such as when the small role is elected while the special role has been carried over before the previous game, the winning small role is placed on the winning line LN within a range of 4 frames. The number of sliding frames is determined so as to draw in as much as possible, and for the stop operation position where the winning small role cannot be drawn within the maximum of four frames in the winning line LN, the winning special role is placed in the winning line LN. A stop control table in which the number of sliding frames is determined so as to draw in the frame as much as possible is generated, and reel stop control is performed. As a result, when the stop operation is performed, if it is possible to stop all the winning combinations in the pay-in line LN within a pull-in range of a maximum of four frames, a control is performed to stop the small winnings together. If it is not possible to draw in the small role that has been won in the up to four frames in the line LN, if the special roles that have been won in the up to four frames in the winning line LN can be aligned and stopped, Control is performed to stop the rolls in line with each other, and for the winning combination that has not been won, control is performed to stop the rolls within the pull-in range of 4 frames. That is, in such a case, the control for aligning the small combination with the pay line LN is given priority over the special combination, and the special combination can be won only when the small combination cannot be drawn. When the special combination and the small combination can be drawn in at the same time, only the small combination is drawn in, so that the small combination and the small combination are not aligned with the winning line LN.
なお、本実施の形態では、特別役が前ゲーム以前から持ち越されている状態で小役が当選した場合や新たに特別役と小役が同時に当選した場合など、特別役と小役が同時に当選している場合には、当選した特別役よりも当選した小役が優先され、小役が引き込めない場合のみ、特別役を入賞ラインLNに揃える制御を行っているが、特別役と小役が同時に当選している場合に、小役よりも特別役を入賞ラインLNに揃える制御が優先され、特別役を引き込めない場合にのみ、小役を入賞ラインLNに揃える制御を行っても良い。 In this embodiment, the special role and the small role are simultaneously won, such as when the small role is won while the special role is carried over from before the previous game, or when the special role and the small role are newly won at the same time. In the case of winning, the winning small role is given priority over the winning special role, and only when the small role cannot be drawn, the special role is controlled to be aligned with the winning line LN. In the case where the special combination is won simultaneously, the control for aligning the special combination with the winning line LN is given priority over the small combination, and the control for aligning the small combination with the winning line LN may be performed only when the special combination cannot be drawn. .
特別役が前ゲーム以前から持ち越されている状態で再遊技役が当選した場合など、特別役とリプレイが同時に当選している場合には、停止操作が行われた際に、入賞ラインLNに最大4コマの引込範囲で再遊技役の図柄を揃えて停止させる制御が行われる。なお、この場合、再遊技役を構成する図柄または同時当選する再遊技役を構成する図柄は、リール2L、2C、2Rのいずれについても5図柄以内、すなわち4コマ以内の間隔で配置されており、4コマの引込範囲で必ず任意の位置に停止させることができるので、特別役と再遊技役が同時に当選している場合には、遊技者によるストップスイッチ8L、8C、8Rの操作タイミングに関わらずに、必ず再遊技役が揃って入賞することとなる。すなわちこのような場合には、特別役よりも再遊技役を入賞ラインLNに揃える制御が優先され、必ず再遊技役が入賞することとなる。なお、特別役と再遊技役を同時に引き込める場合には、再遊技役のみを引き込み、再遊技役と同時に特別役が入賞ラインLNに揃わないようになっている。
When the special role and the replay are elected at the same time, for example, when the special role has been carried over before the previous game and the special role and the replay are elected at the same time, when the stop operation is performed, the maximum pay line LN is displayed. Control is performed in which the symbols of the replaying game are aligned and stopped within the four-frame pull-in range. In this case, the symbols constituting the re-games or the symbols constituting the re-games simultaneously won are arranged within 5 symbols, that is, at intervals of 4 frames or less on any of the
本実施の形態においてメイン制御部41は、リール2L、2C、2Rの回転が開始した後、ストップスイッチ8L、8C、8Rの操作が検出されるまで、停止操作が未だ検出されていないリールの回転を継続し、ストップスイッチ8L、8C、8Rの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっている。なお、リール回転エラーの発生により、一時的にリールの回転が停止した場合でも、その後リール回転が再開した後、ストップスイッチ8L、8C、8Rの操作が検出されるまで、停止操作が未だ検出されていないリールの回転を継続し、ストップスイッチ8L、8C、8Rの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっている。
In the present embodiment, after the rotation of the
なお、本実施の形態では、ストップスイッチ8L、8C、8Rの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっているが、リールの回転が開始してから、予め定められた自動停止時間が経過した場合に、リールの停止操作がなされない場合でも、停止操作がなされたものとみなして自動的に各リールを停止させる自動停止制御を行うようにしても良い。この場合には、遊技者の操作を介さずにリールが停止することとなるため、例え、いずれかの役が当選している場合でもいずれの役も構成しない表示結果を導出させることが好ましい。 In the present embodiment, the control for stopping the display result on the corresponding reel is performed on condition that the operation of the stop switches 8L, 8C, 8R is detected. After that, when a predetermined automatic stop time has elapsed, even if the reel stop operation is not performed, it is considered that the stop operation has been performed, and the automatic stop control for automatically stopping each reel is performed. You may do it. In this case, since the reels stop without the player's operation, it is preferable to derive a display result that does not constitute any combination even if any combination has been won.
次に、本実施の形態におけるメイン制御部41が実行する各種制御内容を説明する。
Next, various control contents executed by the
[初期設定処理]
メイン制御部41は、リセット回路49からシステムリセット信号が入力されるとシステムリセットが発生し、マイクロコンピュータは後述するHWパラメータを参照した機能設定など起動時の各種設定を行う。その後、ユーザプログラムとしてROM41bに記憶されたプログラムにしたがって、図5および図6のフローチャートに示す初期設定処理を行う。
[Initial setting process]
The
図5および図6に示すように、メイン制御部41は、まず、図8および図9において説明するメイン制御部41が一定間隔(0.56msの間隔)で実行するタイマ割込処理(メイン)の割込を禁止する(Sa1)。次いで、内蔵デバイスや周辺IC、割込モード、スタックポインタ等を初期化する(Sa2)。
As shown in FIGS. 5 and 6, the
次いで、RAM41cへのアクセスを許可し(Sa4)、RAM41cの全ての格納領域(未使用領域および未使用スタック領域を含む)のRAMパリティを計算する(Sa5)。
Next, access to the
Sa6のステップでは、Sa5のステップにおいて計算したRAMパリティが0か否かを判定する。正常に電断割込処理(メイン)が行われていれば、RAMパリティが0になるはずであり、Sa6のステップにおいてRAMパリティが0でなければ、RAM41cに格納されているデータが正常ではなく、この場合には、RAM41cの格納領域のうち、使用中スタック領域、重要ワークを除く全ての格納領域を初期化する初期化1を実行した後(Sa22)、設定キースイッチ37がonか否かを判定し(Sa23)、設定キースイッチ37がonであれば、設定変更中であることを示す設定変更開始コマンドを生成し(Sa19)、生成した設定変更開始コマンドをコマンドバッファに格納する(Sa20)。
In the step Sa6, it is determined whether or not the RAM parity calculated in the step Sa5 is 0. If the power interruption interrupt processing (main) is normally performed, the RAM parity should be 0. If the RAM parity is not 0 in the step Sa6, the data stored in the
そして、メイン制御部41は、所定時間毎に定期的にタイマ割込がかかるようにメイン制御部41に内蔵されているタイマ回路のレジスタの設定を行なう(Sa20a)。例えば0.56msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。この実施の形態では、0.56ms毎に定期的にタイマ割込がかかるとする。なお、タイマ回路では該レジスタの設定が行われることにより、タイマが初期化され、初期値から計時を開始することになる。
Then, the
次いで、メイン制御部41は乱数発生回路42の設定を行う(Sa20b)。メイン制御部41は、乱数回路の設定において、ユーザによって予め設定された乱数最大値を指定する乱数最大値設定データを内蔵レジスタに書き込む。また、メイン制御部41は、内蔵レジスタに設定した乱数最大値が所定の下限値以下でないかを確認し、乱数最大値が下限値以下である場合には、乱数最大値設定レジスタに設定されている乱数最大値の再設定を行う乱数最大値再設定処理を実行する。また、メイン制御部41は、乱数発生回路42のカウンタが更新するカウント値の初期値を変更させる初期値変更処理を実行する。また、メイン制御部41は、乱数更新方式選択データを乱数更新方式選択レジスタに書き込む。また、メイン制御部41は、ユーザによって予め設定された乱数発生用クロック信号の周期を指定する周期設定データ(基準クロック信号を何分周させるかを設定するためのデータ)を書き込む。また、メイン制御部41は、乱数発生回路42のカウンタによって所定の最終値までカウント値が更新されたときに、カウンタに入力する初期値を更新するか否かを設定する。また、CPU56は、乱数発生回路42のカウンタによって所定の最終値までカウント値が更新されたときに、カウンタが更新するカウント値の順列を変更するか否かを設定する。そして、メイン制御部41は、乱数回路起動データを書き込む。そのようにすることによって、遊技制御用マイクロコンピュータ560は、乱数発生回路42を起動させる。
Next, the
次いで、メイン制御部41は、図8および図9において説明するメイン制御部41が一定間隔(0.56msの間隔)で実行するタイマ割込処理(メイン)の割込を許可して(Sa21)、当選役の当選確率の変更などを行う設定変更処理、すなわち設定変更状態に移行する。そして、設定変更処理が終了すると、図7に示すゲーム処理に移行する。
Next, the
Sa23のステップにおいて設定キースイッチ37がoffであれば、RAM異常を示すエラーコードをレジスタに設定し(Sa24)、RAM異常を示すエラー開始コマンドを生成し(Sa25)、生成したエラー開始コマンドをコマンドバッファに格納する(Sa26)。そして、Sa20aと同様にタイマ割込の設定を行って(Sa26a)、Sa20bと同様に乱数発生回路42の設定を行い(Sa26b)、図8および図9において説明するメイン制御部41が一定間隔(0.56msの間隔)で実行するタイマ割込処理(メイン)の割込を許可して(Sa27)、エラー処理、すなわちRAM異常エラー状態に移行する。そして、例えば、遊技店員によってリセット/設定スイッチ38が操作されるなどして、RAM異常エラー状態が解除されると、図7に示すゲーム処理に移行する。
If the setting
Sa6のステップにおいて、RAMパリティが0であれば、更に破壊診断用データが正常か否かを判定する(Sa7)。正常に電断処理(メイン)が行われていれば、破壊診断用データが設定されているはずであり、Sa7のステップにおいて破壊診断用データが正常でない場合(破壊診断用データが電断時に格納される5A(H)以外の場合)にも、RAM41cのデータが正常ではないので、Sa22のステップに移行して初期化1を実行し、その後、Sa23のステップにおいて設定キースイッチ37がonであれば、前述したSa19〜Sa21の処理を行い、設定変更処理、すなわち設定変更状態に移行する。また、Sa27のステップにおいて設定キースイッチ37がoffであれば、前述したSa24〜Sa27の処理を行い、エラー処理、すなわちRAM異常エラー状態に移行する。そして、RAM異常エラー状態が解除されると、図7に示すゲーム処理に移行する。
If the RAM parity is 0 in step Sa6, it is further determined whether the destruction diagnosis data is normal or not (Sa7). If the power interruption processing (main) is performed normally, the destruction diagnosis data should have been set. If the destruction diagnosis data is not normal in the step Sa7 (the destruction diagnosis data is stored at the time of the power failure). In the case other than 5A (H), the data in the
Sa7のステップにおいて破壊診断用データが正常であると判定した場合には、RAM41cのデータは正常であるので、破壊診断用データをクリアし(Sa8)、RAM41cの非保存ワーク、未使用領域および未使用スタック領域を初期化する初期化3を行った後(Sa9)、設定キースイッチ37がonか否かを判定し(Sa10)、設定キースイッチ37がonであれば、初期化1を実行し(Sa15)、前述したSa19〜Sa21の処理を行い、設定変更処理、すなわち設定変更状態に移行する。そして、設定変更処理が終了すると、図7に示すゲーム処理に移行する。
If it is determined in step Sa7 that the destructive diagnosis data is normal, the data in the
Sa10のステップにおいて設定キースイッチ37がoffであれば、各レジスタを電断前の状態、すなわちスタックに保存されている状態に復帰し(Sa11)、電断復帰1コマンド(図8参照)を生成してコマンドバッファに格納する(Sa12)。次いで、電断復帰2コマンド(図8参照)を生成してコマンドバッファに格納する(Sa13)。次いで、電断復帰3コマンド(図8参照)を生成してコマンドバッファに格納する(Sa14)。次いで、電断復帰4コマンド(図8参照)を生成してコマンドバッファに格納する(Sa15)。次いで、ホットスタートコマンド(図8参照)を生成してコマンドバッファに格納する(Sa16)。そして、Sa20aと同様にタイマ割込の設定を行って(Sa16a)、Sa20bと同様に乱数発生回路42の設定を行い(Sa16b)、図8および図9において説明するメイン制御部41が一定間隔(0.56msの間隔)で実行するタイマ割込処理(メイン)の割込を許可して(Sa17)、電断前の最後に実行していた処理に戻る。電断前に図7に示すゲーム処理中のいずれかの処理が行われていた場合には、Sa11で復帰されたプログラムカウンタ(PC)の値に基づいて、ゲーム処理のSd1〜Sd6の処理のうち、電断前に行われていた処理に戻る。また、例えば、電断前に図8および図9に示すタイマ割込処理中のいずれかの処理が行われていた場合には、Sa11で復帰されたプログラムカウンタ(PC)の値に基づいて、タイマ割込処理のSk1〜Sk26の処理のうち、電断前に行われていた処理に戻る。
If the setting
[各種コマンドについて]
次に、メイン制御部41がサブ制御部91に対して送信するコマンドについて説明する。メイン制御部41がサブ制御部91に対して送信するコマンドは、コマンドの種類を示す1バイトのモードデータとコマンドの内容を示す1バイトのEXTデータとからなる。サブ制御部91は、モードデータからコマンドの種類を判別し、EXTデータからコマンドの内容を判別する。
[About various commands]
Next, a command transmitted from the
各コマンドは、メイン制御部41のRAM41cの特別ワークに設けられたコマンド送信用バッファに一時的に格納され、図8および図9に示すタイマ割込処理(メイン)で実行されるコマンド送信処理(Sk16)においてサブ制御部91に送信される。
Each command is temporarily stored in a command transmission buffer provided in a special work of the
サブ制御部91は、メイン制御部41からコマンドを受信したときに、受信したコマンドの種類に応じて、液晶表示器51から表示されている画像、スピーカ53,54から出力される音声、前面扉1bに設けられたランプなどの制御を行う。
When a command is received from the
設定変更開始コマンドは、設定変更が開始されたことを示すコマンドである。設定変更開始コマンドは設定変更の開始時に送信される。EXTデータには、設定変更が開始されたことを示す値が設定される。 The setting change start command is a command indicating that the setting change has been started. The setting change start command is transmitted at the start of the setting change. A value indicating that the setting change has been started is set in the EXT data.
設定変更終了コマンドは、設定変更が終了したことおよび設定変更により選択された設定値を示すコマンドである。設定変更終了コマンドは設定変更の終了時に送信される。EXTデータには、設定変更により選択される6種類の設定値のいずれかが設定される。 The setting change end command is a command indicating that the setting change has ended and the setting value selected by the setting change. The setting change end command is transmitted when the setting change ends. In the EXT data, one of six types of setting values selected by changing the setting is set.
エラー開始コマンドは、エラーが発生したことを示すコマンドである。EXTデータには、8種類のエラーのいずれかが設定される。エラー開始コマンドはエラー処理の開始時に送信される。8種類のエラーには、オーバーフロータンク35内のメダルが満タンになったことを示すオーバーフロータンク溢れエラー、ホッパータンク34a内のメダルがなくなったことを示す払出メダルなしエラー、払い出すメダルがホッパータンク34aなどで詰まったことを示す払出メダル詰まりエラー、メダルセレクタでのメダルの検出異常が発生したことを示す投入信号異常エラー、リールの回転が正常に行われていないことを示すリール回転異常エラー、内部抽選の結果から入賞が予想される入賞予想フラグと実際に入賞した入賞結果とが一致しなかったことを示す不正入賞エラー、RAM異常を示すRWM内容エラーが設定されている。
The error start command is a command indicating that an error has occurred. One of eight types of errors is set in the EXT data. The error start command is transmitted at the start of error processing. The eight types of errors include an overflow tank overflow error indicating that the medals in the
エラー解除コマンドは、エラーが解除されたことを示すコマンドである。エラー解除コマンドはエラー処理の解除時に送信される。EXTデータには、エラーが解除されたことを示す値が設定される。 The error release command is a command indicating that the error has been released. The error release command is transmitted when error processing is released. A value indicating that the error has been cleared is set in the EXT data.
精算開始時コマンドは、メダルの精算が開始されたことを示すコマンドである。精算開始時コマンドは精算処理の開始時に送信される。EXTデータには、投入されたメダルが精算されたことを示すデータとクレジットされたメダルが精算されたことを示すデータとのいずれかが設定される。 The settlement start command is a command indicating that the settlement of medals has started. The settlement start command is transmitted at the start of the settlement process. Either data indicating that the inserted medals have been settled or data indicating that the credited medals have been settled are set in the EXT data.
精算終了コマンドは、メダルの精算が終了したことを示すコマンドである。精算終了コマンドは精算処理の終了時に送信される。EXTデータには、精算が終了したことを示す値が設定される。 The settlement end command is a command indicating that the settlement of medals has been completed. The settlement end command is transmitted at the end of the settlement process. A value indicating that the settlement has been completed is set in the EXT data.
メダル投入コマンドは、メダルが投入されたことを示すコマンドである。メダル投入コマンドは、クレジットの加算を伴わないメダルの投入時に送信される。EXTデータには、投入したメダルの枚数(1〜3枚のいずれか)を示す値が設定される。 The medal insertion command is a command indicating that a medal has been inserted. The medal insertion command is transmitted when a medal is inserted without adding credits. In the EXT data, a value indicating the number of inserted medals (any of 1 to 3) is set.
クレジット増加コマンドは、クレジットされたメダルの枚数が増加したことを示すコマンドである。クレジット増加コマンドは、クレジットの加算を伴うメダルの投入時に送信される。EXTデータには、クレジットが増加したことを示す値が設定される。 The credit increase command is a command indicating that the number of credited medals has increased. The credit increase command is transmitted when a medal is inserted with addition of credit. In the EXT data, a value indicating that the credit has increased is set.
遊技カウンタ1コマンドは、ゲームが行われるたびにカウントされる0〜127のカウント値を示すコマンドである。遊技カウンタ1コマンドは、スタートスイッチの操作の受付時に送信される。EXTデータには、0〜127のカウント値のうちのいずれかを示す値が設定される。
The
リール加速情報コマンドは、リールの回転が開始したことを示すコマンドである。リール加速情報コマンドは、スタートスイッチの操作の受付時に送信される。EXTデータには、9種類のリールの回転開始パターンのうちのいずれかを示す値が設定される。 The reel acceleration information command is a command indicating that the rotation of the reel has started. The reel acceleration information command is transmitted when a start switch operation is received. In the EXT data, a value indicating any one of the nine types of reel start patterns is set.
内部当選コマンドは、BBに当選したか否かおよびRTの状態を示すコマンドである。内部当選コマンドは、スタートスイッチの操作の受付時に送信される。EXTデータには、BBに当選したか否かおよびRTの状態を示す値が設定される。 The internal winning command is a command indicating whether or not BB has been won and the state of the RT. The internal winning command is transmitted when the operation of the start switch is received. In the EXT data, a value indicating whether or not the BB has been won and a state of the RT are set.
当選番号コマンドは、内部抽選の結果を示すコマンドである。当選番号コマンドは、スタートスイッチの操作の受付時に送信される。EXTデータには、内部抽選の結果を示す値が設定される。 The winning number command is a command indicating the result of the internal lottery. The winning number command is transmitted when the operation of the start switch is received. In the EXT data, a value indicating the result of the internal lottery is set.
BB投入枚数1コマンドは、BBのゲームで投入したメダルの枚数を示すコマンドである。BB投入枚数1コマンドは、リールの回転開始時に送信される。EXTデータには、投入されたメダルの枚数を示す値が設定される。
The
リール停止受付1コマンドは、第1停止が行われたことを示すコマンドである。リール停止受付1コマンドは、ストップスイッチの操作の受付時に送信される。EXTデータには、各ストップスイッチの受付状態(すなわち操作されたか否か)および各ストップスイッチに内蔵されたLEDの点灯状態(点灯中か否か)を示す値が設定される。
The
リール滑りコマ数1コマンドは、第1停止が行われたときにリールが停止するまでのコマ数を示すコマンドである。リール滑りコマ数1コマンドは、ストップスイッチの操作の受付時に送信される。EXTデータには、リールが停止するまでのコマ数(0〜4コマ)を示す値が設定される。
The reel sliding
リール停止位置1コマンドは、第1停止が行われたときにリールが停止する位置を示すコマンドである。リール停止位置1コマンドは、ストップスイッチの操作の受付時に送信される。EXTデータには、リールの停止位置(コマ番号0〜20)を示す値が設定される。
The
リール停止受付2コマンドは、第2停止が行われたことを示すコマンドである。リール停止受付2コマンドは、ストップスイッチの操作の受付時に送信される。EXTデータには、各ストップスイッチの受付状態(すなわち操作されたか否か)および各ストップスイッチに内蔵されたLEDの点灯状態(点灯中か否か)を示す値が設定される。
The
リール滑りコマ数2コマンドは、第2停止が行われたときにリールが停止するまでのコマ数を示すコマンドである。リール滑りコマ数2コマンドは、ストップスイッチの操作の受付時に送信される。EXTデータには、リールが停止するまでのコマ数(0〜4コマ)を示す値が設定される。
The reel sliding
リール停止位置2コマンドは、第2停止が行われたときにリールが停止する位置を示すコマンドである。リール停止位置2コマンドは、ストップスイッチの操作の受付時に送信される。EXTデータには、リールの停止位置(コマ番号0〜20)を示す値が設定される。
The
リール停止受付3コマンドは、第3停止が行われたことを示すコマンドである。リール停止受付3コマンドは、ストップスイッチの操作の受付時に送信される。EXTデータには、各ストップスイッチの受付状態(すなわち操作されたか否か)および各ストップスイッチに内蔵されたLEDの点灯状態(点灯中か否か)を示す値が設定される。
The
リール滑りコマ数3コマンドは、第3停止が行われたときにリールが停止するまでのコマ数を示すコマンドである。リール滑りコマ数3コマンドは、ストップスイッチの操作の受付時に送信される。EXTデータには、リールが停止するまでのコマ数(0〜4コマ)を示す値が設定される。
The reel
リール停止位置3コマンドは、第3停止が行われたときにリールが停止する位置を示すコマンドである。リール停止位置3コマンドは、ストップスイッチの操作の受付時に送信される。EXTデータには、リールの停止位置(コマ番号0〜20)を示す値が設定される。
The
遊技カウンタ2コマンドは、ゲームが行われるたびにカウントされる0〜127のカウント値を示すコマンドである。遊技カウンタ2コマンドは、全リールの停止後に送信される。EXTデータには、0〜127のカウント値のうちのいずれかを示す値が設定される。
The
RT情報2コマンドは、BBに当選したか否か、RBに当選したか否かおよびRTの状態を示すコマンドである。RT情報2コマンドは、スタートスイッチの操作の受付時に送信される。EXTデータには、BBに当選したか否かまたはRBに当選したか否かと、RTの状態とを示す値が設定される。
The
入賞番号1コマンドは、入賞の種類を示すコマンドである。入賞番号1コマンドは、メダルの払出処理開始時に送信される。EXTデータには、BBの作動状態(BB中か否か)と入賞の種類を示す値が設定される。
The winning
入賞番号2コマンドは、入賞の種類を示すコマンドである。入賞番号1コマンドは、メダルの払出処理開始時に送信される。EXTデータには、BBの作動状態(BB中か否か)と入賞の種類を示す値が設定される。
The winning
入賞枚数コマンドは、入賞により払い出されるメダルの枚数を示すコマンドである。入賞枚数コマンドは、メダルの払出処理開始時に送信される。EXTデータには、メダルの払出枚数を示す値が設定される。 The winning number command is a command indicating the number of medals paid out by winning. The winning number command is transmitted at the start of the medal payout process. In the EXT data, a value indicating the number of payout medals is set.
BB払出枚数1コマンドは、BB時のメダルの払出枚数を示すコマンドである。BB払出枚数1コマンドは、BB中におけるメダルの払出処理開始時に送信される。EXTデータには、BB中におけるメダルの払出枚数を示す値(上位7ビット)が設定される。
The
BB払出枚数2コマンドは、BB時のメダルの払出枚数を示すコマンドである。BB払出枚数2コマンドは、BB中におけるメダルの払出処理開始時に送信される。EXTデータには、BB中におけるメダルの払出枚数を示す値(下位7ビット)が設定される。
The
BB終了待ちコマンドは、BBの終了待ちであることを示すコマンドである。BB終了待ちコマンドはBB終了時に送信される。EXTデータには、終了待ちのBBの種類(本実施形態では1種類)を示す値が設定される。 The BB end waiting command is a command indicating that the BB is waiting for the end. The BB end waiting command is transmitted when BB ends. In the EXT data, a value indicating the type of the BB waiting for completion (one type in the present embodiment) is set.
BB終了コマンドは、BBが終了することを示すコマンドである。BB終了コマンドはBB終了時、自動精算の開始時、打ち止め処理の開始時に送信される。EXTデータには、終了するBBの種類(本実施形態では1種類)を示す値が設定される。 The BB end command is a command indicating that the BB ends. The BB end command is transmitted at the end of BB, at the start of automatic settlement, or at the start of stop processing. In the EXT data, a value indicating the type of BB to be ended (one type in the present embodiment) is set.
RT情報1コマンドは、RTの状態を示すコマンドである。RT情報1コマンドは、ゲームの終了時に送信される。EXTデータには、RTの状態を示す値が設定される。
The
BB作動種別コマンドは、BB中か否かを示すコマンドである。BB作動種別コマンドは、ゲームの終了時に送信される。EXTデータには、BB中か否かを示す値が設定される。 The BB operation type command is a command indicating whether or not BB is being performed. The BB operation type command is transmitted at the end of the game. In the EXT data, a value indicating whether or not BB is being performed is set.
遊技終了コマンドは、ゲームを終了したときの遊技状態(BB、RB、リプレイ入賞)を示すコマンドである。遊技終了コマンドは、ゲームの終了時に送信される。EXTデータには、ゲームを終了したときの遊技状態(BB、RB、リプレイ入賞)を示す値が設定される。 The game end command is a command indicating a game state (BB, RB, replay winning) when the game is ended. The game end command is transmitted when the game ends. In the EXT data, a value indicating a gaming state (BB, RB, replay winning) when the game is ended is set.
ドアコマンドは、前面扉1bが開放されているか否かを示すコマンドである。ドアコマンドは、電源投入時、設定変更開始時、RWM内容エラー開始時、ゲーム終了時、ドア開閉時に送信される。EXTデータには、ドアの開放状態(開放あるいは閉鎖のいずれであるか)を示す値が設定される。 The door command is a command indicating whether or not the front door 1b is open. The door command is transmitted when the power is turned on, when a setting change is started, when an RWM content error starts, when the game ends, and when the door is opened and closed. In the EXT data, a value indicating the open state of the door (whether it is open or closed) is set.
電断復帰1コマンドは、ゲームが行われるたびにカウントされる0〜127のカウント値を示すコマンドである。電断復帰1コマンドは、電源の投入後にバックアップが正常であった場合に送信される。EXTデータには、0〜127のカウント値のうちのいずれかを示す値が設定される。
The power-
電断復帰2コマンドは、BBに当選したか否かおよびRTの状態を示すコマンドである。電断復帰2コマンドは、電源の投入後にバックアップが正常であった場合に送信される。EXTデータには、BBに当選したか否かおよびRTの状態を示す値が設定される。
The
電断復帰3コマンドは、BB中か否かおよび投入済みのメダルの枚数を示すコマンドである。電断復帰3コマンドは、電源の投入後にバックアップが正常であった場合に送信される。EXTデータには、BB中か否かおよび投入済みのメダルの枚数を示す値が設定される。
The
電断復帰4コマンドは、ゲームを終了したときの遊技状態(BB、RB、リプレイ入賞)を示すコマンドである。電断復帰4コマンドは、電源の投入後にバックアップが正常であった場合に送信される。EXTデータには、ゲームを終了したときの遊技状態(BB、RB、リプレイ入賞)を示す値が設定される。
The power-
ホットスタートコマンドは、電源をオフにしないで再起動することを示すコマンドである。ホットスタートコマンドは、電源の投入後にバックアップが正常であった場合に送信される。EXTデータには、電源をオフにしないで再起動することを示す値が設定される。 The hot start command is a command for restarting without turning off the power. The hot start command is transmitted when the backup is normal after the power is turned on. In the EXT data, a value indicating restart without turning off the power is set.
[ゲーム処理]
図7は、メイン制御部41が実行するゲーム処理の制御内容を示すフローチャートである。
[Game processing]
FIG. 7 is a flowchart showing the control content of the game processing executed by the
図7に示すように、ゲーム処理では、BET処理(Sd1)、内部抽選処理(Sd2)、リール回転処理(Sd3)、入賞判定処理(Sd4)、払出処理(Sd5)、ゲーム終了時処理(Sd6)を順に実行し、ゲーム終了時処理が終了すると、再びBET処理に戻る。 As shown in FIG. 7, in the game process, a BET process (Sd1), an internal lottery process (Sd2), a reel rotation process (Sd3), a winning determination process (Sd4), a payout process (Sd5), and a game end process (Sd6) ) Are executed in order, and when the game end processing ends, the processing returns to the BET processing again.
Sd1のステップにおけるBET処理では、賭数を設定可能な状態で待機し、遊技状態に応じた規定数の賭数が設定され、スタートスイッチ7が操作された時点でゲームを開始させる処理を実行する。
In the BET process in the step Sd1, the process waits in a state in which a bet amount can be set, sets a specified number of bets according to a game state, and starts a game when the
Sd2のステップにおける内部抽選処理では、Sd1のステップにおけるスタートスイッチ7の検出によるゲーム開始と同時にラッチされた内部抽選用の乱数値に基づいて上記した各役への入賞を許容するか(すなわち、表示結果の導出を許容するか否か)どうかを決定する処理を行う。この内部抽選処理では、それぞれの抽選結果に基づいて、RAM41cに当選フラグが設定される。なお、内部抽選により特別役(BBまたはRB)に当選した場合は特別役持ち越しフラグセットされる。そして、上記したように特別役持ち越しフラグの有無を判定することによって特別役の持ち越しの有無を判定し、持ち越しの有無に応じた当選役(特別役持ち越し中は特別役は内部抽選の対象から除外される)について判定処理が行われる。
In the internal lottery process in the step Sd2, it is determined whether the winning of each of the above-mentioned winning combinations is permitted based on the random number value for the internal lottery latched simultaneously with the start of the game by the detection of the
Sd3のステップにおけるリール回転処理では、スタートスイッチ7の操作に応答して各リール2L、2C、2Rを回転させる処理、Sd2のステップにおける内部抽選の結果および遊技者によるストップスイッチ8L、8C、8Rの操作が検出されたことに応じて対応するリール2L、2C、2Rの回転を停止させる処理を実行する。
In the reel rotation process in the step Sd3, the process of rotating each of the
Sd4のステップにおける入賞判定処理では、Sd3のステップにおいて全てのリール2L、2C、2Rの回転が停止したと判定した時点で、各リール2L、2C、2Rに導出された表示結果に応じて入賞が発生したか否かを判定する処理を実行する。なお、特別役が入賞した場合には本処理において特別役持ち越しフラグがクリアされる。
In the prize determination process in the step Sd4, when it is determined in the step Sd3 that the rotation of all the
Sd5のステップにおける払出処理では、Sd4のステップにおいて入賞の発生が判定された場合に、その入賞に応じた払出枚数に基づきクレジットの加算並びにメダルの払出等の処理を行う。 In the payout process in the step Sd5, when the occurrence of a prize is determined in the step Sd4, processes such as addition of credits and payout of medals are performed based on the number of payouts according to the prize.
Sd6のステップにおけるゲーム終了時処理では、次のゲームに備えて遊技状態を設定する処理を実行する。 In the process at the time of ending the game in the step Sd6, a process of setting a gaming state in preparation for the next game is executed.
また、ゲーム処理では、ゲームの進行制御に応じてコマンドを生成してコマンドバッファに設定し、サブ制御部91に送信されるようになっている。
In the game process, a command is generated in accordance with the progress control of the game, set in the command buffer, and transmitted to the
[タイマ割込処理(メイン)]
図8および図9は、メイン制御部41が一定間隔(0.56msの間隔)で初期設定処理やゲーム処理に割り込んで実行するタイマ割込処理(メイン)の制御内容を示すフローチャートである。なお、タイマ割込処理(メイン)の実行期間中は自動的に他の割込が禁止される。
[Timer interrupt processing (main)]
FIGS. 8 and 9 are flowcharts showing the control contents of the timer interrupt processing (main) executed by the
図8および図9に示すように、タイマ割込処理(メイン)においては、まず、使用中のレジスタをスタック領域に退避する(Sk1)。 As shown in FIG. 8 and FIG. 9, in the timer interrupt processing (main), first, a register in use is saved in a stack area (Sk1).
次いで、停電判定処理を行う(Sk2)。停電判定処理では、電断検出回路48から電圧低下信号が入力されているか否かを判定し、電圧低下信号が入力されていれば、前回の停電判定処理でも電圧低下信号が入力されていたか否かを判定し、前回の停電判定処理でも電圧低下信号が入力されていた場合には停電と判定し、その旨を示す電断フラグを設定する。
Next, a power failure determination process is performed (Sk2). In the power failure determination processing, it is determined whether or not a voltage drop signal is input from the power
Sk2のステップにおける停電判定処理の後、電断フラグが設定されているか否かを判定し(Sk3)、電断フラグが設定されていなければ、Sk4に進み、電断フラグが設定されていた場合には、電断処理(メイン)に移行する。 After the power failure determination process in step Sk2, it is determined whether or not the power failure flag is set (Sk3). If the power failure flag is not set, the process proceeds to Sk4, where the power failure flag is set. , The processing shifts to the power interruption processing (main).
Sk4のステップでは、入力ポートから各種スイッチ類の検出データを入力するポート入力処理を行う。 In step Sk4, port input processing for inputting detection data of various switches from an input port is performed.
次いで、4種類のタイマ割込1〜4から当該タイマ割込処理(メイン)において実行すべきタイマ割込を識別するための分岐用カウンタを1進める(Sk5)。この実施形態では、タイマ割込1とは、モータを制御してリールの開始制御を行うタイマ割込中の分岐処理であり、具体的には、後述するリール始動処理など、Sk9〜Sk11の処理が行われる。また、タイマ割込2とは、LED表示制御や、時間カウンタの更新、ドア開閉状態の監視、制御信号等の出力制御、コマンドおよび外部出力信号の更新を行うタイマ割込中の分岐処理であり、具体的には、後述するLEDダイナミック表示処理など、Sk12〜Sk17の処理が行われる。また、タイマ割込3とは、リールの原点通過を検出したり、スイッチ入力を監視したり、乱数値の読み出しを行うタイマ割込中の分岐処理であり、具体的には、後述する原点通過時処理など、Sk20〜Sk22の処理が行われる。また、タイマ割込4とは、停止スイッチの入力を検出してリールの停止制御を行うタイマ割込中の分岐処理であり、具体的には、後述する停止スイッチ処理など、Sk23〜Sk25の処理が行われる。Sk5のステップでは、分岐用カウンタ値が0〜2の場合に1が加算され、カウンタ値が3の場合に0に更新される。すなわち分岐用カウンタ値は、タイマ割込処理(メイン)が実行される毎に、0→1→2→3→0・・・の順番でループする。
Next, the branch counter for identifying the timer interrupt to be executed in the timer interrupt processing (main) from the four types of timer interrupts 1 to 4 is advanced by 1 (Sk5). In this embodiment, the timer interrupt 1 is a branching process during the timer interrupt for controlling the motor to start the reels. Specifically, the processes of Sk9 to Sk11 such as a reel start process described later. Is performed. The timer interrupt 2 is a branching process during the timer interrupt for performing LED display control, updating a time counter, monitoring a door open / close state, controlling output of control signals and the like, and updating commands and external output signals. Specifically, the processes of Sk12 to Sk17, such as an LED dynamic display process described later, are performed. The timer interrupt 3 is a branching process during the timer interrupt for detecting the passage of the origin of the reel, monitoring the switch input, and reading the random number value. More specifically, the
次いで、分岐用カウンタ値を参照して2または3か、すなわちタイマ割込3またはタイマ割込4かを判定し(Sk6)、タイマ割込3またはタイマ割込4ではない場合、すなわちタイマ割込1またはタイマ割込2の場合には、リールモータ32L、32C、32Rの始動時または定速回転中か否かを確認し、リールモータ32L、32C、32Rの始動時または定速回転中であれば、後述するSk10のモータステップ処理において変更した位相信号データや後述するSk24の最終停止処理において変更した位相信号データを出力するモータ位相信号出力処理を実行する(Sk7)。
Next, it is determined with reference to the branch counter value whether it is 2 or 3, that is, whether it is timer interrupt 3 or timer interrupt 4 (Sk6), and if it is not timer interrupt 3 or timer interrupt 4, that is, if it is not timer interrupt 4, In the case of 1 or timer interrupt 2, it is checked whether or not the
次いで、分岐用カウンタ値を参照して1か否か、すなわちタイマ割込2か否かを判定し(Sk8)、タイマ割込2ではない場合、すなわちタイマ割込1の場合には、リールモータ32L、32C、32Rの始動時のステップ時間間隔の制御を行うリール始動処理(Sk9)、リールモータ32L、32C、32Rの位相信号データの変更を行うモータステップ処理(Sk10)、リールモータ32L、32C、32Rの停止後、一定時間経過後に位相信号を1相励磁に変更するモータ位相信号スタンバイ処理(Sk11)を順次実行した後、Sk25のステップに進む。
Next, it is determined whether or not it is 1 by referring to the branch counter value, that is, whether or not it is the timer interrupt 2 (Sk8). If it is not the timer interrupt 2, that is, if it is the timer interrupt 1, the reel motor Reel start processing (Sk9) for controlling the step time interval at the start of 32L, 32C, 32R, motor step processing (Sk10) for changing the phase signal data of
また、Sk8のステップにおいてタイマ割込2の場合には、各種表示器をダイナミック点灯させるLEDダイナミック表示処理(Sk12)、各種LED等の点灯信号等のデータを出力ポートへ出力する制御信号等出力処理(Sk13)、各種時間カウンタを更新する時間カウンタ更新処理(Sk14)、ドア開放検出スイッチ25の検出状態の監視、ドアコマンドの送信要求などを行うドア監視処理(Sk15)、コマンドバッファに設定された設定変更中コマンドや復帰コマンド、エラーコマンド等の各種コマンドをサブ制御部91に送信するコマンド送信処理(Sk16)、外部出力信号を更新する外部出力信号更新処理(Sk17)を順次実行した後、Sk25のステップに進む。
In the case of timer interrupt 2 in step Sk8, an LED dynamic display process for dynamically lighting various indicators (Sk12), and a control signal output process for outputting data such as lighting signals of various LEDs to an output port. (Sk13), time counter update processing for updating various time counters (Sk14), monitoring of the detection state of the door
また、Sk6のステップにおいてタイマ割込3またはタイマ割込4であれば、更に、分岐用カウンタ値を参照して3か否か、すなわちタイマ割込4か否かを判定し(Sk18)、タイマ割込4でなければ、すなわちタイマ割込3であれば、回転中のリール2L、2C、2Rの原点通過(リール基準位置の通過)をチェックし、リール回転エラーの発生を検知するとともに、停止準備が完了しているか(停止準備完了コードが設定されているか)を確認し、停止準備が完了しており、かつ定速回転中であれば、回転中のリールに対応するストップスイッチの操作を有効化する原点通過時処理(Sk20)、MAXBETスイッチ6、スタートスイッチ7、ストップスイッチ8L、8C、8Rなどのスイッチ類の検出状態に変化があったか否かの判定、操作検出コマンドの送信要求等を行うスイッチ入力判定処理(Sk21)、乱数値レジスタR1Dから数値データを読み出して乱数値格納ワークに格納する乱数値読出処理(Sk22)を順次実行した後、Sk26のステップに進む。
If the timer interrupt is the timer interrupt 3 or the timer interrupt 4 in the step of Sk6, it is further determined whether or not the timer interrupt is 3 by referring to the branch counter value, that is, whether or not the timer interrupt is 4 (Sk18). If it is not the interrupt 4, that is, if it is the timer interrupt 3, the rotation of the
また、Sk18のステップにおいてタイマ割込4であれば、ストップスイッチ8L、8C、8Rの検出に伴って停止リールのワークに停止操作位置が格納されたときに、停止リールのワークに格納された停止操作位置から停止位置を決定し、何ステップ後に停止すれば良いかを算出する停止スイッチ処理(Sk23)、停止スイッチ処理で算出された停止までのステップ数をカウントして、停止する時期になったら2相励磁によるブレーキを開始する停止処理(Sk24)、停止処理においてブレーキを開始してから一定時間後に3相励磁とする最終停止処理(Sk25)を順次実行した後、Sk26のステップに進む。 Further, if the timer interrupt is 4 in the step of Sk18, when the stop operation position is stored in the work of the stop reel upon detection of the stop switches 8L, 8C, 8R, the stop stored in the work of the stop reel is performed. Stop switch processing (Sk23) for determining the stop position from the operation position and calculating how many steps to stop after, counting the number of steps up to the stop calculated in the stop switch processing, and when it is time to stop. A stop process (Sk24) for starting braking by two-phase excitation, a final stop process (Sk25) for three-phase excitation after a predetermined time from the start of braking in the stop process, and then the process proceeds to Sk26.
Sk26のステップでは、Sk1においてスタック領域に退避したレジスタを復帰し、割込前の処理に戻る。 In step Sk26, the register saved in the stack area in Sk1 is restored, and the process returns to the process before the interruption.
[電断処理(メイン)]
図10は、メイン制御部41が前述したタイマ割込処理(メイン)において電断フラグが設定されていると判定した場合に実行する電断処理(メイン)の制御内容を示すフローチャートである。
[Power interruption processing (main)]
FIG. 10 is a flowchart showing the control contents of the power interruption processing (main) executed when the
電断処理(メイン)においては、まず、使用している可能性がある全てのレジスタをスタック領域に退避する(Sm1)。なお、前述したIレジスタ及びIYレジスタの値は使用されているが、起動時の初期化に伴って常に同一の固定値が設定されるため、ここでは保存されない。 In the power interruption processing (main), first, all registers that may be used are saved in the stack area (Sm1). The values of the I register and the IY register are used, but are not stored here because the same fixed value is always set with the initialization at the time of startup.
次いで、破壊診断用データ(本実施の形態では、5A(H))をセットする(Sm2)。そして、図8および図9において説明するメイン制御部41が一定間隔(0.56msの間隔)で実行するタイマ割込処理(メイン)の割込を禁止し、全ての出力ポートを初期化する(Sm3)。次いでRAM41cの全ての格納領域(未使用領域及び未使用スタック領域を含む)の排他的論理和が0になるようにRAMパリティ調整用データを計算してセットし(Sm4)、RAM41cへのアクセスを禁止する(Sm5)。
Next, destruction diagnosis data (5A (H) in the present embodiment) is set (Sm2). Then, the
その後、電圧が低下してメイン制御部41のCPU41aが停止して待機状態に移行する。そして、この待機状態のまま電圧が低下すると内部的に動作停止状態になる。よって、電断時に確実にメイン制御部41は動作停止する。
Thereafter, the voltage drops, the CPU 41a of the
なお、本実施形態では、出力ポートの初期化の前に割込禁止に設定しているが、サブ制御基板90、外部出力基板1000、リールモータやリールセンサにデータを出力するための出力ポートへのデータの書き込みやシリアル通信回路へのデータの書き込みを行う前に割込禁止に設定してもよい。
In the present embodiment, the interrupt is prohibited before the output port is initialized. However, the output port for outputting data to the
[マイクロコンピュータの構成について]
図11に示すように、メイン制御部41やサブ制御部91として使用されるマイクロコンピュータは、クロック生成回路200、リセットコントローラ201、割込コントローラ202、WDT(ウォッチドッグタイマ)203、CTC(カウンタタイマ)204、演算回路205、アドレスデコーダ206、メインCPU41aやサブCPU91aとして用いられるCPU207、ROM41bやROM91bとして用いられるROM208、ROM41cやRAM91cとして用いられるRAM209、M1カウンタ210、検査ポート211、乱数発生回路42として用いられる乱数回路212および汎用初期値用乱数回路212、シリアル通信回路214、PWM(パルス幅変調)出力回路215、割込/汎用出力回路216、乱数外部ラッチ入力回路217を備えている。
[Configuration of microcomputer]
As shown in FIG. 11, microcomputers used as the
図11に示すマイクロコンピュータは、セキュリティ機能として、個別のID、ROM読み出し制限、64ピンSZIP封入、検査ポート211を備えている。
The microcomputer shown in FIG. 11 includes, as security functions, an individual ID, ROM reading restriction, 64-pin SZIP sealing, and an
また、CPU207は10MHz(最小命令実行時間:100msec)の周波数で動作する。
The
また、ROM208は10,240バイトの容量を備え、RAM209は512バイトの容量を備えている。
The
また、リセット機能として、システムリセット、WDT(ウォッチドッグタイマ)リセット、定期リセット、イリーガルアクセスリセットの4つの機能を備えている。 In addition, four reset functions are provided: a system reset, a WDT (watchdog timer) reset, a periodic reset, and an illegal access reset.
また、割込機能として、外部端子割込(INT/NMI)、CTC割込(CTC0、CTC1、CTC2)の2つの機能を備えている。 Further, as an interrupt function, there are provided two functions of an external terminal interrupt (INT / NMI) and a CTC interrupt (CTC0, CTC1, CTC2).
また、チップセレクト端子として、CSモード時に16本、ECSモード時に23本を用いる。また、CTC204は、16ビット×3チャンネルを備えている。
As chip select terminals, 16 are used in the CS mode and 23 are used in the ECS mode. The
また、乱数回路212は、8ビット固定長乱数×8チャンネル、16ビット固定長乱数×2チャンネル、8ビット可変長乱数×4チャンネル、16可変長乱数×2チャンネルの計16チャンネルを備えている。さらに、汎用初期値用乱数回路212は1チャンネルを備えている。
Further, the
また、シリアル通信回路214は、送信×3チャンネル、受信×1チャンネルを備えている。
The
また、演算回路205は、CRC16、チェックサム、水平パリティの計算を行う。
Further, the
また、PWM出力回路217は、4チャンネルを備えている。汎用外部ラッチ入力回路は3本の入力を備えている。
The
また、汎用入出力端子として、入力側に4本、出力側に3本を備えている。また、アドレスデコーダ207は、CS0〜CS15の出力に用いられる。
Also, four general-purpose input / output terminals are provided on the input side and three are provided on the output side. The
[メモリ空間のアドレスマップ]
次に、図11に示すマイクロコンピュータのROM208及びRAM209におけるメモリ空間のアドレスマップについて図12を用いて説明する。図12に示すメモリ空間は16ビットアドレスでアクセスするメモリ空間である。メモリ空間には、メモリ命令でアクセスされる。図12では、0000h〜7FFFhがRAMのメモリ空間、8000h〜FFFFhがROMのメモリ空間になっている。
[Address map of memory space]
Next, an address map of a memory space in the
RAM209のメモリ空間メモリ空間アドレス0000h〜01FFhにはアクセスが可能となる使用可能領域となっている。メモリ空間アドレス0200h〜0FFFhはアクセスが禁止される未使用領域になっている。メモリ空間アドレス1000h〜1080hには内部レジスタが割り当てられている。メモリ空間アドレス1081h〜7FFFhはアクセスが禁止される未使用領域になっている。メモリ空間アドレス8000h〜A7FFhにはROMが割り当てられている。メモリ空間アドレスA800h〜FFFFhはアクセスが禁止される未使用領域になっている。
The memory space addresses 0000h to 01FFh of the
ROM208のメモリ空間では、アドレス8000h〜A6FFhにプログラム/データが割り当てられる。また、アドレスA700h〜A7FFhにROMコメントが割り当てられる。また、アドレスA780h〜A7A7hにベクタテーブルが割り当てられる。また、アドレスA7A8h〜A7FFhにHWパラメータが割り当てられる。
In the memory space of the
以上のように、512バイトのRAMが0000h〜01FFhに配置されている。システムリセット又はWDTリセットが発生するとRAMプロテクト状態となる。RAMプロテクト状態ではRAMの読み出しはできるが、書き込みはできない。RAMプロテクト状態を解除するにはRAMプロテクトレジスタ(RAMPT)に00h又は80hを設定する。 As described above, the 512-byte RAM is arranged in 0000h to 01FFh. When a system reset or a WDT reset occurs, a RAM protection state is set. In the RAM protected state, the RAM can be read but cannot be written. To release the RAM protection state, 00h or 80h is set in the RAM protection register (RAMPT).
内部機能レジスタは、図11のマイクロコンピュータに搭載されている各機能を制御するためのレジスタ群である。HWパラメータのシステム設定(HSYSCNT)の内部機能レジスタ配置(HRGACS)に1を設定するとI/O空間に配置することもできる。 The internal function registers are a group of registers for controlling each function mounted on the microcomputer of FIG. If 1 is set in the internal function register arrangement (HRGACS) of the system setting (HSYSCNT) of the HW parameter, it can be arranged in the I / O space.
また、10,240バイトのROMが8000h〜A7FFhに配置されている。ROM領域には、プログラム/データ、ROMコメント、ベクタテーブル、HWパラメータが配置されている。 In addition, a 10,240-byte ROM is arranged at 8000h to A7FFh. In the ROM area, programs / data, ROM comments, vector tables, and HW parameters are arranged.
マイクロコンピュータは、システムリセット、WDTリセット、定期リセット、イリーガルアクセスリセット後8000hからプログラムを実行する。この領域以外ではプログラムを実行することができない。 The microcomputer executes the program from 8000h after the system reset, the WDT reset, the periodic reset, and the illegal access reset. The program cannot be executed outside this area.
ROMコメントは、プログラムのタイトル、バージョンなどを設定する領域で、任意のデータを設定することができる。ここに設定したデータは検査ポート(TXD,RXD,STB,DIR)から読み出すことができる。 The ROM comment is an area for setting a title, a version, and the like of a program, in which arbitrary data can be set. The data set here can be read from the inspection ports (TXD, RXD, STB, DIR).
ベクタテーブルは、CALLV命令のサブルーチンの先頭アドレスと、割込処理の先頭アドレスを設定するテーブルである。使用しないベクタテーブルには0000hを設定する。ベクタテーブルに設定した値が、0000hと8000h〜HPRGEND以外の場合は、マイクロコンピュータは起動しない。HPRGENDは、HWパラメータのプログラムエンドアドレスで設定する。 The vector table is a table for setting the head address of the subroutine of the CALLV instruction and the head address of the interrupt processing. 0000h is set in the unused vector table. If the values set in the vector table are other than 0000h and 8000h to HPRGEND, the microcomputer does not start. HPRGEND is set by the program end address of the HW parameter.
HWパラメータは、マイクロコンピュータの内部機能をハードウェア的に設定するためのパラメータである。設定は定数テーブルとして記述する。なお、プログラムで書き込むことはできない。 The HW parameter is a parameter for setting the internal function of the microcomputer by hardware. The setting is described as a constant table. It cannot be written by a program.
[ベクタテーブルアドレスマップ]
次に、図12で示したROM208のメモリ空間におけるベクタテーブルのアドレスマップについて図13を用いて説明する。
[Vector table address map]
Next, an address map of the vector table in the memory space of the
図13に示すように、ベクタテーブルは、メモリ空間アドレスA780h〜A79FhがCALLV命令用ベクタテーブルとなっており、メモリ空間アドレスA7A0h〜A7A7hが割込処理用ベクタテーブルとなっている。 As shown in FIG. 13, in the vector table, the memory space addresses A780h to A79Fh are the vector tables for the CALLV instruction, and the memory space addresses A7A0h to A7A7h are the vector tables for the interrupt processing.
CALLV命令用ベクタテーブルのメモリ空間アドレスA780h〜A781hには、CALLV0の(下位)および(上位)の値が設定されている。メモリ空間アドレスA782h〜A783hには、CALLV1の(下位)および(上位)の値が設定されている。メモリ空間アドレスA784h〜A785hには、CALLV2の(下位)および(上位)の値が設定されている。メモリ空間アドレスA786h〜A787hには、CALLV3の(下位)および(上位)の値が設定されている。メモリ空間アドレスA788h〜A789hには、CALLV4の(下位)および(上位)の値が設定されている。メモリ空間アドレスA78Ah〜A78Bhには、CALLV5の(下位)および(上位)の値が設定されている。メモリ空間アドレスA78Ch〜A78Dhには、CALLV6の(下位)および(上位)の値が設定されている。メモリ空間アドレスA78Eh〜A78Fhには、CALLV7の(下位)および(上位)の値が設定されている。メモリ空間アドレスA790h〜A791hには、CALLV8の(下位)および(上位)の値が設定されている。メモリ空間アドレスA792h〜A793hには、CALLV9の(下位)および(上位)の値が設定されている。メモリ空間アドレスA794h〜A795hには、CALLV10の(下位)および(上位)の値が設定されている。メモリ空間アドレスA796h〜A797hには、CALLV11の(下位)および(上位)の値が設定されている。メモリ空間アドレスA798h〜A799hには、CALLV12の(下位)および(上位)の値が設定されている。メモリ空間アドレスA79Ah〜A79Bhには、CALLV13の(下位)および(上位)の値が設定されている。メモリ空間アドレスA79Ch〜A79Dhには、CALLV14の(下位)および(上位)の値が設定されている。メモリ空間アドレスA79Eh〜A79Fhには、CALLV15の(下位)および(上位)の値が設定されている。
In the memory space addresses A780h to A781h of the CALLV instruction vector table, (lower) and (upper) values of CALLV0 are set. In the memory space addresses A782h to A783h, (lower) and (higher) values of CALLV1 are set. The (lower) and (upper) values of CALLV2 are set in the memory space addresses A784h to A785h. The (lower) and (upper) values of CALLV3 are set in the memory space addresses A786h to A787h. The (lower) and (upper) values of CALLV4 are set in the memory space addresses A788h to A789h. In the memory space addresses A78Ah to A78Bh, (lower) and (higher) values of the CALLV5 are set. (Lower) and (higher) values of CALLV6 are set in the memory space addresses A78Ch to A78Dh. In the memory space addresses A78Eh to A78Fh, (lower) and (higher) values of the CALLV7 are set. In the memory space addresses A790h to A791h, (lower) and (upper) values of the CALLV8 are set. In the memory space addresses A792h to A793h, (lower) and (upper) values of the
割込処理用ベクタテーブルのメモリ空間アドレスA7A0h〜A7A1hには、INT/NMIの(下位)および(上位)の値が設定されている。メモリ空間アドレスA7A2h〜A7A3hには、CTC0の(下位)および(上位)の値が設定されている。メモリ空間アドレスA7A4h〜A7A5hには、CTC1の(下位)および(上位)の値が設定されている。メモリ空間アドレスA7A6h〜A7A7hには、CTC2の(下位)および(上位)の値が設定されている。 INT / NMI (lower order) and (upper order) values are set in memory space addresses A7A0h to A7A1h of the interrupt processing vector table. The (lower) and (upper) values of CTC0 are set in the memory space addresses A7A2h to A7A3h. In the memory space addresses A7A4h to A7A5h, (lower) and (higher) values of CTC1 are set. (Lower) and (higher) values of CTC2 are set in the memory space addresses A7A6h to A7A7h.
[HWパラメータ一覧]
次に、図12で示したROM208のメモリ空間におけるHWパラメータについて図14を用いて説明する。
[List of HW parameters]
Next, the HW parameters in the memory space of the
図14に示すように、メモリ空間アドレスA7A8hはシンボルHCSATR0が対応付けされ、CS/PWM設定に用いられる。メモリ空間アドレスA7A9hはシンボルHCSATR1が対応付けされ、CS/PWM設定に用いられる。メモリ空間アドレスA7AAhはシンボルHCSATR2が対応付けされ、CS/PWM設定に用いられる。メモリ空間アドレスA7ABhはシンボルHCSATR3が対応付けされ、CS/PWM設定に用いられる。メモリ空間アドレスA7AChはシンボルHCSATR4が対応付けされ、CS/PWM設定に用いられる。メモリ空間アドレスA7ADhはシンボルHCSATR5が対応付けされ、CS/PWM設定に用いられる。メモリ空間アドレスA7AEhはシンボルHCSATRDが対応付けされ、CS/PWM設定に用いられる。 As shown in FIG. 14, the symbol HCSATRO is associated with the memory space address A7A8h, and is used for CS / PWM setting. The memory space address A7A9h is associated with the symbol HCSATR1 and is used for CS / PWM setting. The memory space address A7AAh is associated with the symbol HCSATR2 and is used for CS / PWM setting. The memory space address A7ABh is associated with the symbol HCSATR3 and is used for CS / PWM setting. The memory space address A7ACh is associated with the symbol HCSATR4 and is used for CS / PWM setting. The memory space address A7ADh is associated with the symbol HCSATR5 and is used for CS / PWM setting. The memory space address A7AEh is associated with the symbol HCSATRD and is used for CS / PWM setting.
メモリ空間アドレスA7AFhはシンボルHPRSTが対応付けされ、定期リセット設定に用いられる。 The memory space address A7AFh is associated with the symbol HPRST and is used for periodic reset setting.
メモリ空間アドレスA7B0hはシンボルHRDMDが対応付けされ、乱数回路動作モード設定に用いられる。 The symbol HRDMD is associated with the memory space address A7B0h, and is used for setting a random number circuit operation mode.
メモリ空間アドレスA7B1hはシンボルHSYSCNTが対応付けされ、システム設定に用いられる。 The memory space address A7B1h is associated with the symbol HSYSCNT and is used for system setting.
メモリ空間アドレスA7B2hはシンボルHSYSCNTが対応付けされ、リセット期間/INP端子設定に用いられる。 The memory space address A7B2h is associated with the symbol HSYSCNT and is used for reset period / INP terminal setting.
メモリ空間アドレスA7B3h〜A7B4hはシンボルHRPGENDが対応付けされ、プログラムエンドアドレスの設定に用いられる。 The memory space addresses A7B3h to A7B4h are associated with the symbol HRPGEND and are used for setting a program end address.
メモリ空間アドレスA7B5h〜A7B6hはシンボルHRAMSTATが対応付けされ、RAMアクセス禁止アドレスの設定に用いられる。 The memory space addresses A7B5h to A7B6h are associated with the symbol HRAMSTAT and are used for setting a RAM access prohibition address.
メモリ空間アドレスA7B7h〜A7B8hはシンボルHRAMENDが対応付けされ、RAMアクセス禁止アドレスに用いられる。 The memory space addresses A7B7h to A7B8h are associated with the symbol HRAMEND and are used as RAM access prohibition addresses.
メモリ空間アドレスA7B9h〜A7CChはシンボルHSWSTSが対応付けされ、SWステータスの設定に用いられる。 The memory space addresses A7B9h to A7CCh are associated with the symbol HSWSTS and are used for setting the SW status.
メモリ空間アドレスA7CDh〜A7CFhはメーカコードの設定に用いられる。 The memory space addresses A7CDh to A7CFh are used for setting a maker code.
メモリ空間アドレスA7D0h〜A7D7hは製品コードの設定に用いられる。 The memory space addresses A7D0h to A7D7h are used for setting a product code.
メモリ空間アドレスA7D8h〜A7FFhはセキュリティコードの設定に用いられる。 The memory space addresses A7D8h to A7FFh are used for setting a security code.
[リセット期間/INP端子設定]
次に、図14に示すHWパラメータにおけるリセット期間/INP端子設定について図15を用いて説明する。
[Reset period / INP terminal setting]
Next, the reset period / INP terminal setting in the HW parameter shown in FIG. 14 will be described with reference to FIG.
図15に示すように、メモリ空間アドレスA7B2hのビット7にシンボルHPORTENが対応付けされている。HPORTENではINP端子機能設定の設定が行われる。そして、0に設定されたときには割込入力端子として使用せず、1に設定されたときは割込入力端子として使用するように設定される。
As shown in FIG. 15, the symbol HPORTEN is associated with
また、メモリ空間アドレスA7B2hのビット6にシンボルHPORTMDが対応付けされている。HPORTMDでは割込入力設定および自動相互認証の設定が行われる。そして、0に設定されたときはINT割込入力となり、1に設定されたときはNMI割込入力となるように設定される。
The symbol HPORTMD is associated with
また、メモリ空間アドレスA7B2hのビット5にシンボルHRTMENが対応付けされている。HRTMENではリセット期間延長設定の設定が行われる。そして、0に設定されたときは延長せず、1に設定されたときは延長するように設定が行われる。なお、延長時間は固定時間+変動時間となる。
Further, the symbol HRTMEN is associated with
また、メモリ空間アドレスA7B2hのビット4にシンボルHRRDENが対応付けされている。HRRDENではリセット期間延長設定の設定が行われる。そして、A7B2hのビット4で、0に設定されたときは常に0msecで変動せず、MCLK(システムクロック)=20MHzの場合において、1に設定されたときは0msec〜1275msec(5msec、256種類)で変動するように設定される。なお、システムリセットの都度前回と異なる時間となる。
The symbol HRRDEN is associated with
また、メモリ空間アドレスA7B2hのビット3〜0にシンボルHRSTMが対応付けされている。HRSTMでは、固定時間の設定が行われる。そして、MCLK=20MHzの場合において、0hに設定されたときには1.0secとなるように設定される。また、1hにセットされたときには2.0secとなるように設定される。以降、設定値に応じて1.0secずつ長くなり、最大で30.0secになるように設定される。
The symbol HRSTM is associated with
以上のように、HPORTENとHPORTMDの設定で、割込入力/汎用入力端子(INP)にLレベルの信号が入力された場合に割込処理を起動するか否か、またその割込要求がINT割込またはNMI割込を選択することができる。 As described above, in the settings of HPORTEN and HPORTMD, whether an interrupt process is started when an L-level signal is input to the interrupt input / general-purpose input terminal (INP) and whether the interrupt request is INT An interrupt or an NMI interrupt can be selected.
また、HORTENの設定状態にかかわらず、INP端子の入力レベルを外部信号入力/リセット要因レジスタ(PINSTS)から読み出すことができるので汎用入力としても使用することができる。 Further, regardless of the setting state of HORTEN, the input level of the INP terminal can be read from the external signal input / reset factor register (PINSTS), so that it can be used as a general-purpose input.
また、HETMENに0を設定するとHRRDEN、HRSTMの設定にかかわらずリセット期間は延長されない。 Also, when HEMTEN is set to 0, the reset period is not extended regardless of the settings of HRRDEN and HRSTM.
また、HRTMENに1を設定すると400.5msec(MCLK=20MHzの場合)のシステムリセット期間の後、プログラムを開始するまでの期間を延長することができる。延長する時間はHRSTMで設定される固定時間と、HRRDENで設定される変動時間の合計となる。 Also, when HRTMENU is set to 1, the period from the system reset period of 400.5 msec (when MCLK = 20 MHz) to the start of the program can be extended. The extended time is the sum of the fixed time set by HRSTM and the variable time set by HRRDEN.
例えば、HRTMEN=1、HRRDEN=1、HRSTM4hを設定した場合のシステムリセット時間は次のようになる。
400.5msec+5.0msec+(0〜1275msec)=5.4005sec〜6.6755sec(MCLK=20MHzの場合)
For example, the system reset time when HRTMEN = 1, HRRDEN = 1, and HRSTM4h are set as follows.
400.5 msec + 5.0 msec + (0 to 1275 msec) = 5.4005 sec to 6.6755 sec (when MCLK = 20 MHz)
[プログラムエンドアドレス]
次に、図14に示すHWパラメータにおけるプログラムエンドアドレスについて図16を用いて説明する。
[Program end address]
Next, the program end address in the HW parameter shown in FIG. 14 will be described with reference to FIG.
メモリ空間アドレスにおける「8000h〜A6FFh」は、図12に示すように「プログラム/データ」を格納するための領域として定められている。しかしながら、「プログラム/データ」の容量は遊技機の制御の内容によって異なり、これら領域の全てに格納されるわけではない。本マイクロコンピュータでは、プログラムエンドアドレスを設定することにより「プログラム/データ」が格納されている領域の範囲を設定して、「プログラム/データ」が格納されていない領域にアクセスがあった場合、イリーガルアクセスリセットが発生するように設定することができる。なお、「プログラム/データ」が格納されている領域の範囲についてエンドアドレス(最終アドレス)を指定することで設定を行っているが、スタートアドレス(開始アドレス)を指定するようにしてもよい。また、離間した複数領域を設定できるようにしてもよい。 “8000h to A6FFh” in the memory space address is defined as an area for storing “program / data” as shown in FIG. However, the capacity of “program / data” differs depending on the contents of control of the gaming machine, and is not stored in all of these areas. In this microcomputer, by setting a program end address, a range of an area where “program / data” is stored is set, and when an area where “program / data” is not accessed is accessed, illegal It can be set so that an access reset occurs. Although the setting is performed by designating the end address (final address) for the range of the area where “program / data” is stored, the start address (start address) may be designated. Further, a plurality of separated areas may be set.
図16に示すように、メモリ空間アドレスA7B3hのビット7〜0にシンボルHPRGEND(下位)が対応付けされ、メモリ空間アドレスA7B4hのビット7〜0にシンボルHPRGEND(上位)が対応付けされている。HPRGENDではプログラムエンドアドレスの設定が行われる。そして、8000h〜A6FFhで使用するROM領域の最終アドレスが設定される。
As shown in FIG. 16, a symbol HPRGEND (lower order) is associated with
なお、HPRGENDに8000h〜A6FFh以外を設定するとエラー状態となってマイクロコンピュータは起動しない。HPRGENDには最終アドレスを設定する。ROM領域全てをアクセス可能とする場合にはHPRGEND=A6FFhを設定する。HPRGENDで設定したアドレス+1からA6FFhまでの領域をアクセスした場合はイリーガルアクセスリセットが発生する。 If HPRGEND is set to a value other than 8000h to A6FFh, an error occurs and the microcomputer does not start. The final address is set in HPRGEND. If the entire ROM area can be accessed, HPRGEND = A6FFh is set. When an area from address +1 set by HPRGEND to A6FFh is accessed, an illegal access reset occurs.
図17に示すように、例えば、HPRGEND=8852hを設定した場合は、8852hにアクセスするとイリーガルアクセスリセットが発生する。 As shown in FIG. 17, for example, when HPRGEND = 8852h is set, an illegal access reset occurs when accessing 8852h.
[RAMアクセス禁止アドレス]
次に、図14に示すHWパラメータにおけるRAMアクセス禁止アドレスについて図18を用いて説明する。
[RAM access prohibition address]
Next, the RAM access prohibition address in the HW parameter shown in FIG. 14 will be described with reference to FIG.
図18に示すように、メモリ空間アドレスA7B5hのビット7〜0にシンボルHRAMSTAT(下位)が対応付けされ、メモリ空間アドレスA7B5hのビット7〜0にシンボルHRAMSTAT(上位)が対応付けされている。HRAMSTATではRAMアクセス禁止スタートアドレスの設定が行われる。そして、0000h〜01FFhにアクセス禁止するRAM領域の開始アドレスが設定される。
As shown in FIG. 18,
メモリ空間アドレスA7B7hのビット7〜0にシンボルHRAMEND(下位)が対応付けされ、メモリ空間アドレスA7B8hのビット7〜0にシンボルHRAMEND(上位)が対応付けされている。HRAMENDではRAMアクセス禁止エンドアドレスの設定が行われる。そして、0000h〜01FFhにアクセス禁止するRAM領域の最終アドレスが設定される。
なお、HRAMSTATとHRAMENDに設定する値が次の関係を満たさない場合はエラー状態としてマイクロコンピュータは起動しない。
0000h≦HRAMSTAT≦HRAMEND≦01FFh
If the values set in HRAMSTAT and HRAMEND do not satisfy the following relationship, the microcomputer is not started as an error state.
0000h ≦ HRAMSTAT ≦ HRAMEND ≦ 01FFh
また、アクセス禁止するRAM領域の開始アドレスをHRAMSTATに設定し、アクセス禁止するRAM領域の最終アドレスをHRAMENDに設定する。 Also, the start address of the RAM area for which access is prohibited is set to HRAMSTAT, and the final address of the RAM area for which access is prohibited is set to HRAMEND.
RAM領域全てにアクセスする場合は、HRAMSTAT=0000h、HRAMEND=0000hに設定する。 When accessing the entire RAM area, HRAMSTAT = 0000h and HRAMEND = 0000h are set.
また、HRAMSTATとHRAMENDで設定されたアクセス禁止領域にアクセスした場合はイリーガルアクセスリセットが発生する。 In addition, an illegal access reset occurs when an access prohibited area set by HRAMSTAT and HRAMEND is accessed.
図19に示すように、例えば、HRAMSTAT=00F2h、HRAMEND=01A7hを設定した場合は、002Fh〜01A7hにアクセスするとイリーガルアクセスリセットが発生する。また、HRAMSTATとHRAMENDの設定は、RAMプロテクトレジスタ(RAMPT)の設定で無効にすることもできる。 As shown in FIG. 19, for example, when HRAMSTAT = 00F2h and HRAMEND = 01A7h are set, an illegal access reset occurs when accessing 002Fh to 01A7h. The settings of HRAMSTAT and HRAMEND can be invalidated by setting of a RAM protect register (RAMPT).
[SWステータス]
次に、図14に示すHWパラメータにおけるSWステータスについて図20を用いて説明する。
[SW status]
Next, the SW status in the HW parameter shown in FIG. 14 will be described with reference to FIG.
図20に示すように、メモリ空間アドレスA7B9hのビット7〜0にシンボルHSWSTS0(下位)が対応付けされ、メモリ空間アドレスA7B8hのビット7〜0にシンボルHSWSTS0(上位)が対応付けされている。HSWSTS1〜9も同様である。そして、HSWSTS0〜9ではSWステータス0〜9の設定が行われる。そして、0000h〜01FFhに検査装置で監視するRAMのアドレスが設定される。 As shown in FIG. 20, the symbols HSWSTS0 (lower) are associated with bits 7-0 of the memory space address A7B9h, and the symbol HSWSTS0 (upper) is associated with bits 7-0 of the memory space address A7B8h. The same applies to HSWSTS 1 to 9. Then, in the HSWSTS0-9, the setting of the SW status 0-9 is performed. Then, the address of the RAM monitored by the inspection device is set to 0000h to 01FFh.
なお、HSWSTS0〜9に0000h〜01FFh以外を設定するとエラー状態としてマイクロコンピュータは起動しない。 If a value other than 0000h to 01FFh is set in HSWSTS0 to 9, the microcomputer does not start as an error state.
また、HSWSTS0〜9にHWパラメータのRAMアクセス禁止アドレス(HRAMSTAT、HRAMEND)で設定したRAMアクセス禁止領域のアドレスを設定するとエラー状態としてマイクロコンピュータは起動しない。 If the address of the RAM access prohibition area set by the RAM access prohibition address (HRAMSTAT, HRAMEND) of the HW parameter is set in HSWSTS0-9, the microcomputer is not started as an error state.
また、検査装置で監視するアドレスをHSWSTS0〜9に設定する。 Also, the addresses monitored by the inspection device are set to HSWSTS0 to HSWSTS9.
また、SWステータスを使用しない場合は0000hを設定する。ただし、0000hがRAMアクセス禁止領域に設定されている場合は、エラー状態としてマイクロコンピュータは起動しないので、RAMアクセス禁止領域に0000hを含めないことが好適である。 If the SW status is not used, 0000h is set. However, if 0000h is set in the RAM access prohibition area, the microcomputer does not start as an error state, so it is preferable not to include 0000h in the RAM access prohibition area.
[イリーガルアクセスリセットが発生する条件]
次に、図11に示すマイクロコンピュータにおいてイリーガルアクセスリセットが発生する条件について図21を用いて説明する。図21に示す場合には、不正アクセスと判断してイリーガルアクセスリセットが発生する。イリーガルアクセスリセットが発生すると、CPUコアだけがリセットされ、内部機能はリセットされない。
[Conditions that cause illegal access reset]
Next, conditions under which an illegal access reset occurs in the microcomputer shown in FIG. 11 will be described with reference to FIG. In the case shown in FIG. 21, it is determined that the access is unauthorized, and an illegal access reset occurs. When an illegal access reset occurs, only the CPU core is reset, and the internal functions are not reset.
図21に示すように、CS/PWM設定(シンボル名:HCSATR0〜HCSATR5)において、設定内容がHCSRW0=00;CS機能無効(HCSRW1〜HCSRW23も同様)のときは、CS0(I/O空間のC0h)へのアクセス(CS1〜CS23も同様)があったことがイリーガルアクセスリセットの発生条件となる。 As shown in FIG. 21, in the CS / PWM setting (symbol name: HCSATR0 to HCSATR5), when the setting content is HCSRW0 = 00; when the CS function is invalid (the same applies to HCSRW1 to HCSRW23), CS0 (C0h in the I / O space). ) (CS1 to CS23 are also the same), which is a condition for generating an illegal access reset.
また、CS/PWM設定(シンボル名:HCSATR0〜HCSATR5)において、設定内容がHCSRW0=01;R0信号と同期(HCSRW1〜HCSRW23も同様)のときは、CS0(I/O空間のC0h)への書き込み(CS1〜CS23も同様)があったことがイリーガルアクセスリセットの発生条件となる。 In the CS / PWM setting (symbol name: HCSATR0 to HCSATR5), when the setting content is HCSRW0 = 01; in synchronization with the R0 signal (the same applies to HCSRW1 to HCSRW23), writing to CS0 (C0h in the I / O space). (Similarly for CS1 to CS23) is a condition for generating an illegal access reset.
また、CS/PWM設定(シンボル名:HCSATR0〜HCSATR5)において、設定内容がHCSRW0=10;W0信号と同期(HCSRW1〜HCSRW23も同様)のときは、CS0(I/O空間のC0h)からの読み出し(CS1〜CS23も同様)があったことがイリーガルアクセスリセットの発生条件となる。 Further, in the CS / PWM setting (symbol name: HCSATR0 to HCSATR5), when the setting is HCSRW0 = 10; in synchronization with the W0 signal (the same applies to HCSRW1 to HCSRW23), reading from CS0 (C0h in the I / O space) is performed. (Similarly for CS1 to CS23) is a condition for generating an illegal access reset.
また、CS/PWM設定(シンボル名:HCSMOD)において、設定内容がHCSMD=0;CSモードのときは、ECS領域(I/O空間のD0h〜D7h)へのアクセスがあったことがイリーガルアクセスリセットの発生条件となる。 Further, in the CS / PWM setting (symbol name: HSCMOD), the setting content is HCSMD = 0; in the CS mode, the access to the ECS area (D0h to D7h of the I / O space) is illegal access reset. Is the condition for the occurrence of
また、CS/PWM設定(シンボル名:HCSMOD)において、設定内容がHCSMD=1;ECSモードのときは、CS15(I/O空間のCFh)へのアクセスがあったことがイリーガルアクセスリセットの発生条件となる。 Further, in the CS / PWM setting (symbol name: HCSMOD), when the setting content is HCSMD = 1; in the ECS mode, an access to the CS15 (CFh in the I / O space) is required to generate an illegal access reset. It becomes.
次に、システム設定(シンボル名:HSYSCNT)において、設定内容がHRGACS=0;メモリ空間のときは、内部レジスタへのI/Oアクセスがあったことがイリーガルアクセスリセットの発生条件となる。 Next, in the system setting (symbol name: HSYSCNT), when the setting content is HRGACS = 0; memory space, an I / O access to an internal register is a condition for generating an illegal access reset.
次に、システム設定(シンボル名:HSYSCNT)において、設定内容がHRGACS=1;I/O空間のときは、内部レジスタへのメモリアクセスがあったことがイリーガルアクセスリセットの発生条件となる。 Next, in the system setting (symbol name: HSYSCNT), when the setting content is HRGACS = 1; I / O space, the memory access to the internal register is a condition for generating an illegal access reset.
次に、システム設定(シンボル名:HSYSCNT)において、設定内容がHRGACS=1;I/O空間のときは、内部レジスタへのメモリアクセスがあったことがイリーガルアクセスリセットの発生条件となる。 Next, in the system setting (symbol name: HSYSCNT), when the setting content is HRGACS = 1; I / O space, the memory access to the internal register is a condition for generating an illegal access reset.
次に、プログラムエンドアドレス(シンボル名:HPRGEND)の設定に関して、プログラムエンドアドレスとして設定されたアドレスの次のアドレスからA6FFhの間の領域へのアクセスがあったことがイリーガルアクセスリセットの発生条件となる。 Next, regarding the setting of the program end address (symbol name: HPRGEND), the condition for generating an illegal access reset is that an access is made to the area between A6FFh and the address following the address set as the program end address. .
次に、RAMアクセス禁止アドレス(シンボル名:HRAMSTAT、HRAMEND)に関して、RAMアクセス禁止アドレスとして設定されたRAM領域の開始アドレスと最終アドレスの間の領域へのアクセスがあったことがイリーガルアクセスリセットの発生条件となる。 Next, regarding the RAM access prohibition address (symbol name: HRAMSTAT, HRAMEND), an illegal access reset occurs because there was access to an area between the start address and the last address of the RAM area set as the RAM access prohibition address. Condition.
次に、内部機能レジスタ(シンボル名:MKCODE)に関し、MKCODEへの書き込みがあったことがイリーガルアクセスリセットの発生条件となる。 Next, with respect to the internal function register (symbol name: MKCODE), writing to MKCODE is a condition for generating an illegal access reset.
次に、内部機能レジスタ(シンボル名:PRCODE)に関し、PRCODEへの書き込みがあったことがイリーガルアクセスリセットの発生条件となる。 Next, with respect to the internal function register (symbol name: PRCODE), writing to PRCODE is a condition for generating an illegal access reset.
次に、内部機能レジスタ(シンボル名:CPCODE)に関し、CPCODEへの書き込みがあったことがイリーガルアクセスリセットの発生条件となる。 Next, with respect to the internal function register (symbol name: CPCODE), writing to CPCODE is a condition for generating an illegal access reset.
次に、ROM領域として設定されている領域(8000h〜A7FFh)への書き込みがあったこと、ROMコメント領域(A700h〜A77Fh)へのアクセスがあったこと、HWパラメータ領域(A7A8h〜A77Fh)へのアクセスがあったことがイリーガルアクセスリセットの発生条件となる。 Next, writing to the area (8000h to A7FFh) set as the ROM area, access to the ROM comment area (A700h to A77Fh), and access to the HW parameter area (A7A8h to A77Fh). Access is a condition for generating an illegal access reset.
次に、メモリ空間のうち未使用領域(200h〜FFFh、10B1h〜7FFFh、A800h〜FFFh)へのアクセスがあったことがイリーガルアクセスリセットの発生条件となる。 Next, an access to an unused area (200h to FFFh, 10B1h to 7FFFh, A800h to FFFh) in the memory space is a condition for generating an illegal access reset.
次に、I/O空間のうち未使用領域(B1h〜BFh)へのアクセスがあったことがイリーガルアクセスリセットの発生条件となる。 Next, an access to an unused area (B1h to BFh) in the I / O space is a condition for generating an illegal access reset.
次に、CPUコアが未定義命令をフェッチしたことがイリーガルアクセスリセットの発生条件となる。 Next, the fact that the CPU core fetches the undefined instruction is a condition for generating an illegal access reset.
[起動しない条件]
次に図11に示すマイクロコンピュータが起動しない条件について図22を用いて説明する。図22に示す条件を満たした場合はエラー状態と判断してマイクロコンピュータは起動しない。
[Condition not to start]
Next, conditions under which the microcomputer shown in FIG. 11 is not activated will be described with reference to FIG. When the condition shown in FIG. 22 is satisfied, it is determined that an error has occurred, and the microcomputer does not start.
図22に示すように、ベクタテーブルの設定(関係するシンボル名:HPRGEND)においては、0000hと8000h〜HPRGEND以外の値が設定されるとマイクロコンピュータが起動しない条件が満たされる。 As shown in FIG. 22, in the setting of the vector table (related symbol name: HPRGEND), if a value other than 0000h and 8000h to HPRGEND is set, the condition that the microcomputer is not started is satisfied.
CS/PWM設定(関係するシンボル名:HCSMD、HCSRW16〜HCSRW23)においては、CS/PWM設定で設定した値がHCSMD=0、かつHCSRW16が00以外の値が設定されるとマイクロコンピュータが起動しない条件が満たされる。HCSRW17〜HCSRW23も同様である。 In the CS / PWM setting (related symbol names: HCSMD, HCSRW16 to HCSRW23), the condition that the microcomputer is not started when the value set in the CS / PWM setting is HCSMD = 0 and the HCSRW16 is set to a value other than 00 Is satisfied. The same applies to HCSRW17 to HCSRW23.
CS/PWM設定(関係するシンボル名:HCSMD、HCSRW15)においては、HCSMD=1、かつHCSRW15が00以外の値が設定されるとマイクロコンピュータが起動しない条件が満たされる。 In the CS / PWM setting (related symbol names: HCSMD, HCSRW15), if HCSMD = 1 and a value other than 00 is set for HCSRW15, the condition that the microcomputer is not started is satisfied.
CS/PWM設定(関係するシンボル名:HPW0MD〜HPW3MD、HCSRW11〜HCSRW14)においては、HPW0MD=1、かつHCSRW11が00以外の値が設定されるとマイクロコンピュータが起動しない条件が満たされる。また、HPW1MD=1、かつHCSRW12が00以外の値が設定されるとマイクロコンピュータが起動しない条件が満たされる。HPW2MD=1、かつHCSRW13が00以外の値が設定されるとマイクロコンピュータが起動しない条件が満たされる。HPW3MD=1、かつHCSRW14が00以外の値が設定されるとマイクロコンピュータが起動しない条件が満たされる。 In the CS / PWM setting (related symbol names: HPW0MD to HPW3MD, HCSRW11 to HCSRW14), if HPW0MD = 1 and HCSRRW11 are set to values other than 00, the condition that the microcomputer is not started is satisfied. If HPW1MD = 1 and HCSRW12 is set to a value other than 00, the condition that the microcomputer is not started is satisfied. If HPW2MD = 1 and HCSRW13 is set to a value other than 00, the condition that the microcomputer is not started is satisfied. If HPW3MD = 1 and HCSRW14 is set to a value other than 00, the condition that the microcomputer is not started is satisfied.
CS/PWM設定(関係するシンボル名:HCSMOD)においては、HCSMODのビット4=1が設定されるとマイクロコンピュータが起動しない条件が満たされる。また、HCSMODのビット5=1が設定されるとマイクロコンピュータが起動しない条件が満たされる。また、HCSMODのビット6=1が設定されるとマイクロコンピュータが起動しない条件が満たされる。
In the CS / PWM setting (related symbol name: HCSMOD), the condition that the microcomputer is not started when
乱数回路動作モード設定(関係するシンボル名:HRDMD)においては、HEDMDのビット3=1が設定されるとマイクロコンピュータが起動しない条件が満たされる。
In the setting of the random number circuit operation mode (related symbol name: HRDMD), the condition that the microcomputer does not start when the
乱数回路動作モード設定(関係するシンボル名:HFRCLK)においては、HFRCLK=1を設定し、かつ乱数外部クロック(EXCLK)入力がないときにマイクロコンピュータが起動しない条件が満たされる。 In the random number circuit operation mode setting (related symbol name: HFRCLK), the condition that the microcomputer is not started when HFRCLK = 1 is set and there is no random number external clock (EXCLK) input is satisfied.
乱数回路動作モード設定(関係するシンボル名:HRDMYE)においては、HRDMYE=1の場合にマイクロコンピュータが起動しない条件が満たされる。 In the setting of the random number circuit operation mode (related symbol name: HRDMYE), the condition that the microcomputer is not started when HRDMYE = 1 is satisfied.
システム設定(関係するシンボル名:HSYSCNT)においては、HSYSCNTのビット5=1が設定されるとマイクロコンピュータが起動しない条件が満たされる。また、HSYSCNTのビット6=1が設定されるとマイクロコンピュータが起動しない条件が満たされる。また、HSYSCNTのビット7=1が設定されるとマイクロコンピュータが起動しない条件が満たされる。なお、HSYSCNTのビット5〜7は、いずれの機能の設定にも用いられていない未使用ビットであり、通常は0が設定される。
In the system setting (related symbol name: HSYSCNT), if
システム設定(関係するシンボル名:HLNKMD、HAUTLK)においては、HLNKMD=0、かつHAUTLK=1が設定されるとマイクロコンピュータが起動しない条件が満たされる。 In the system settings (related symbol names: HLNKMD, HAUTLK), if HLNKMD = 0 and HAUTLK = 1 are set, the condition that the microcomputer is not started is satisfied.
プログラムエンドアドレス(関係するシンボル名:HPRGEND)においては、HPRGENDに8000h〜A6FF以外の値が設定されるとマイクロコンピュータが起動しない条件が満たされる。 In the program end address (related symbol name: HPRGEND), if a value other than 8000h to A6FF is set in HPRGEND, the condition that the microcomputer is not started is satisfied.
RAMアクセス禁止アドレス(関係するシンボル名:HRAMSTAT、HRAMEND)においては、0000h≦HRAMSTAT≦HRAMEND≦01FFhを満たさない場合はマイクロコンピュータが起動しない条件が満たされる。 In the RAM access prohibition address (related symbol names: HRAMSTAT, HRAMEND), the condition that the microcomputer is not started is satisfied unless 0000h ≦ HRAMSTAT ≦ HRAMEND ≦ 01FFh is not satisfied.
SWステータス(関係するシンボル名:HSWSTS0〜HSWSTS9)においては、HSWSTS0が0000h〜01FFh以外の値が設定されるとマイクロコンピュータが起動しない条件が満たされる。HSWSTS1〜HSWSTS9も同様である。 In the SW status (related symbol names: HSWSTS0 to HSWSTS9), if HSSWTS0 is set to a value other than 0000h to 01FFh, the condition that the microcomputer is not started is satisfied. The same applies to HSWSTS1 to HSWSTS9.
SWステータス(関係するシンボル名:HSWSTS0〜HSWSTS9、HRAMSTAT、HRAMEND)においては、HSWSTS0がHRAMSTATとHRAMENDで設定したアクセス禁止権領域の値が設定されるとマイクロコンピュータが起動しない条件が満たされる。HSWSTS1〜HSWSTS9も同様である。 In the SW status (related symbol names: HSWTSTS0 to HSWSTS9, HRAMSTAT, HRAMEND), the condition that the microcomputer is not started when HSSWTS0 is set to the value of the access prohibition right area set by HRAMSTAT and HRAMEND is satisfied. The same applies to HSWSTS1 to HSWSTS9.
[リセット要因による動作の変化]
次に、図11に示すマイクロコンピュータにおいてリセット要因による動作の変化について図23を用いて説明する。図23に示すように4種類のリセット要因により動作が変化する。
[Changes in operation due to reset factors]
Next, a change in operation of the microcomputer shown in FIG. 11 due to a reset factor will be described with reference to FIG. As shown in FIG. 23, the operation changes due to four types of reset factors.
システムリセットが行われた場合にはシステムリセット期間が設定され、リセット要因がWDTリセット、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合にはシステムリセット期間が設定されない。 When the system reset is performed, the system reset period is set. When the reset factor is any of the WDT reset, the periodic reset, and the illegal access reset, the system reset period is not set.
また、システムリセットによりリセット期間が延長された場合には、HWパラメータでリセット期間の延長を有効に設定した場合にリセット期間の延長が設定され、WDTリセット、定期リセット、イリーガルアクセスリセットのいずれかによりリセット期間が延長されなかった場合には、リセット期間の延長が設定されない。 When the reset period is extended by the system reset, the extension of the reset period is set when the extension of the reset period is set to be valid by the HW parameter, and is set by any of the WDT reset, the periodic reset, and the illegal access reset. If the reset period is not extended, the extension of the reset period is not set.
また、システムリセット、WDTリセット、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合には、CPUコアが初期化される。 When any of a system reset, a WDT reset, a periodic reset, and an illegal access reset is performed, the CPU core is initialized.
また、システムリセットが行われた場合には入出力端子は初期化され、WDTリセット、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合には、入出力端子は初期化されない。 When a system reset is performed, the input / output terminals are initialized. When any of the WDT reset, the periodic reset, and the illegal access reset is performed, the input / output terminals are not initialized.
また、システムリセット、WDTリセット、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合でもRAMの内容は変化しない。 Further, even when any of system reset, WDT reset, periodic reset, and illegal access reset is performed, the contents of the RAM do not change.
また、システムリセット、WDTリセットのいずれかが行われた場合にはRAMはプロテクト状態に設定され、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合にはRAMはプロテクト状態に設定されない。 The RAM is set to the protected state when any of the system reset and the WDT reset is performed, and the RAM is not set to the protected state when any of the periodic reset and the illegal access reset is performed.
また、システムリセット、WDTリセットのいずれかが行われた場合にはCTCは初期化され、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合にはCTCは初期化されない。 Also, if any of the system reset and the WDT reset is performed, the CTC is initialized, and if any of the periodic reset or the illegal access reset is performed, the CTC is not initialized.
また、システムリセットが行われた場合にはWDTは初期化され、WDTリセット、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合にはWDTは初期化されない。 When a system reset is performed, the WDT is initialized, and when any of the WDT reset, the periodic reset, and the illegal access reset is performed, the WDT is not initialized.
また、システムリセットが行われた場合にはWDT循環クリアモードのクリア値の順番は初期化され、WDTリセット、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合にはWDT循環クリアモードのクリア値の順番は初期化されない。 When a system reset is performed, the order of the clear values in the WDT cyclic clear mode is initialized. When any of the WDT reset, the periodic reset, and the illegal access reset is performed, the WDT cyclic clear mode is cleared. The order of the values is not initialized.
また、システムリセットが行われた場合にはシリアル通信は送受信を中断して初期化され、WDTリセット、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合には初期化されない。 Further, when a system reset is performed, serial communication is interrupted and transmission and reception are initialized, and when any of WDT reset, periodic reset, and illegal access reset is performed, initialization is not performed.
また、システムリセット、WDTリセットのいずれかが行われた場合には割込コントローラは初期化され、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合には割込コントローラは初期化されない。 The interrupt controller is initialized when any one of a system reset and a WDT reset is performed, and the interrupt controller is not initialized when any one of a periodic reset and an illegal access reset is performed.
また、システムリセットが行われた場合には、外部信号入力/リセット要因、レジスタのリセット要因、PINSTSのビット5〜7は初期化され、WDTリセット、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合には初期化されない。
When a system reset is performed, external signal input / reset factors, register reset factors, and
また、システムリセット、WDTリセットのいずれかが行われた場合には乱数回路は初期化され、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合には乱数回路は初期化されない。 The random number circuit is initialized when any one of a system reset and a WDT reset is performed, and the random number circuit is not initialized when any one of a periodic reset and an illegal access reset is performed.
また、システムリセット、WDTリセットのいずれかが行われた場合には乱数の初期値は毎回異なり、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合には乱数の初期値はリセット前のスタート値に設定される。 Also, the initial value of the random number is different every time when any of the system reset and the WDT reset is performed, and the initial value of the random number is changed to the value before the reset when any of the periodic reset and the illegal access reset is performed. Set to value.
また、システムリセットが行われた場合には、乱数エラーステータスレジスタは初期化され、WDTリセット、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合には初期化されない。 Further, when a system reset is performed, the random number error status register is initialized, and is not initialized when any of a WDT reset, a periodic reset, and an illegal access reset is performed.
また、システムリセットが行われた場合には、汎用初期値用乱数は毎回異なり、WDTリセット、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合には汎用初期値用乱数は変化しない。 When a system reset is performed, the general-purpose initial value random number is different each time. When any of the WDT reset, the periodic reset, and the illegal access reset is performed, the general-purpose initial value random number does not change.
また、システムリセット、WDTリセットのいずれかが行われた場合にはM1カウンタは初期化され、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合にはM1カウンタは初期化されない。 The M1 counter is initialized when any of a system reset and a WDT reset is performed, and the M1 counter is not initialized when any of a periodic reset and an illegal access reset is performed.
また、システムリセット、WDTリセットのいずれかが行われた場合には定期リセットモニタは初期化され、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合には定期リセットモニタは初期化されない。 Further, the periodic reset monitor is initialized when any one of the system reset and the WDT reset is performed, and the periodic reset monitor is not initialized when any one of the periodic reset and the illegal access reset is performed.
また、システムリセット、WDTリセットのいずれかが行われた場合には演算機能は初期化され、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合には演算機能は初期化されない。 The arithmetic function is initialized when any of the system reset and the WDT reset is performed, and the arithmetic function is not initialized when any of the periodic reset and the illegal access reset is performed.
また、システムリセット、WDTリセットのいずれかが行われた場合にはPWM出力は初期化され、定期リセット、イリーガルアクセスリセットのいずれかが行われた場合にはPWM出力は初期化されない。 The PWM output is initialized when any of the system reset and the WDT reset is performed, and the PWM output is not initialized when any of the periodic reset and the illegal access reset is performed.
[内部機能レジスタ]
次に、図12に示す内部機能レジスタについて図24を用いて具体的に説明する。なお、図中のSは「システムリセット」、Wは「WDTリセット」を示す。また、R/W(Read/Write)は、R/Wが読み書き可能、Rが読み出しのみ可能、Wが書き込みのみ可能であることを示す。また、一部機能を省略して説明する。
[Internal function register]
Next, the internal function register shown in FIG. 12 will be specifically described with reference to FIG. In the figure, S indicates “system reset”, and W indicates “WDT reset”. R / W (Read / Write) indicates that R / W is readable and writable, R is only readable, and W is only writable. Also, description will be made with some functions omitted.
なお、図示を省略した機能には、乱数回路で更新する乱数値の最大値を定める乱数最大値レジスタや、乱数値を取得する際の動作を定める外部ラッチ信号許可レジスタ、外部ラッチ信号モードレジスタなどの乱数回路に関わるレジスタが含まれており、これらの初期化要因はシステムリセットとWDTリセットになっている(図23参照)。 The functions not illustrated include a random number maximum value register that determines the maximum value of the random number value to be updated by the random number circuit, an external latch signal permission register that determines an operation when the random number value is acquired, an external latch signal mode register, and the like. The registers relating to the random number circuit are included, and these initialization factors are a system reset and a WDT reset (see FIG. 23).
図24に示すように、I/O空間アドレス00h、メモリ空間アドレス1000hにはRAMプロテクトレジスタ(RAMPT)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。
As shown in FIG. 24, a RAM protect register (RAMPT) is assigned to the I /
I/O空間アドレス01h、メモリ空間アドレス1001hにはCTCコントロールレジスタ(TMCNT0)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。
A CTC control register (TMCNT0) is assigned to the I /
I/O空間アドレス02h、メモリ空間アドレス1002hにはCTCコントロールレジスタ(TMCNT1)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。
A CTC control register (TMCNT1) is assigned to the I /
I/O空間アドレス03h、メモリ空間アドレス1003hにはCTCコントロールレジスタ(TMCNT2)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。
A CTC control register (TMCNT2) is assigned to the I /
I/O空間アドレス04h及び05h、メモリ空間アドレス1004hおよび1005hにはCTCデータレジスタ(CTC0)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。 A CTC data register (CTC0) is assigned to the I / O space addresses 04h and 05h and the memory space addresses 1004h and 1005h. R / W is R / W, and initialization factors are S and W.
I/O空間アドレス06h及び07h、メモリ空間アドレス1006hおよび1007hにはCTCデータレジスタ(CTC1)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。 A CTC data register (CTC1) is assigned to the I / O space addresses 06h and 07h and the memory space addresses 1006h and 1007h. R / W is R / W, and initialization factors are S and W.
I/O空間アドレス08h及び09h、メモリ空間アドレス1008hおよび1009hにはCTCデータレジスタ(CTC2)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。 A CTC data register (CTC2) is assigned to the I / O space addresses 08h and 09h and the memory space addresses 1008h and 1009h. R / W is R / W, and initialization factors are S and W.
I/O空間アドレス0Ah、メモリ空間アドレス100AhにはWDTコントロールレジスタ(WDTCNT)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。 A WDT control register (WDTCNT) is assigned to the I / O space address 0Ah and the memory space address 100Ah. R / W is R / W, and initialization factors are S and W.
I/O空間アドレス0Bh、メモリ空間アドレス100BhにはWDTクリアレジスタ(WDTCLR0)が割り当てられている。そして、R/WはWとなっている。なお、初期化要因はない。 A WDT clear register (WDTCLR0) is assigned to the I / O space address 0Bh and the memory space address 100Bh. And R / W is W. There is no initialization factor.
I/O空間アドレス0Ch、メモリ空間アドレス100ChにはWDTクリアレジスタ(WDTCLR1)が割り当てられている。そして、R/WはWとなっている。なお、初期化要因はない。 A WDT clear register (WDTCLR1) is assigned to the I / O space address 0Ch and the memory space address 100Ch. And R / W is W. There is no initialization factor.
I/O空間アドレス0Dh、メモリ空間アドレス100DhにはWDTクリアレジスタ(WDTCLR2)が割り当てられている。そして、R/WはWとなっている。なお、初期化要因はない。 A WDT clear register (WDTCLR2) is assigned to the I / O space address 0Dh and the memory space address 100Dh. And R / W is W. There is no initialization factor.
I/O空間アドレス0Eh、メモリ空間アドレス100EhにはWDTクリアレジスタ(WDTCLR3)が割り当てられている。そして、R/WはWとなっている。なお、初期化要因はない。 A WDT clear register (WDTCLR3) is assigned to the I / O space address 0Eh and the memory space address 100Eh. And R / W is W. There is no initialization factor.
I/O空間アドレス23h、メモリ空間アドレス1023hには割込要求レジスタ(IRR)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。
An interrupt request register (IRR) is assigned to the I /
I/O空間アドレス24h、メモリ空間アドレス1024hには割込許可レジスタ(IRR)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。
An interrupt permission register (IRR) is assigned to the I /
I/O空間アドレス25h、メモリ空間アドレス1025hには割込優先順位レジスタ(IPR)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。
An interrupt priority register (IPR) is assigned to the I /
I/O空間アドレス26h、メモリ空間アドレス1026hには外部信号入力/リセット要因レジスタ(PINSTS)が割り当てられている。そして、R/WはR/W、初期化要因はSとなっている。
An external signal input / reset factor register (PINSTS) is assigned to the I /
I/O空間アドレス94h、メモリ空間アドレス1094hには定期リセットモニタレジスタ(ITRMN)が割り当てられている。そして、R/WはR、初期化要因はS,Wとなっている。
A periodic reset monitor register (ITRMN) is assigned to the I /
I/O空間アドレス95h、メモリ空間アドレス1095hには演算データレジスタ(CDAT)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。 An operation data register (CDAT) is assigned to the I / O space address 95h and the memory space address 1095h. R / W is R / W, and initialization factors are S and W.
I/O空間アドレス96h、メモリ空間アドレス1096hには水平パリティ演算結果レジスタ(CPTY)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。 A horizontal parity operation result register (CPTY) is assigned to the I / O space address 96h and the memory space address 1096h. R / W is R / W, and initialization factors are S and W.
I/O空間アドレス97h及び98h、メモリ空間アドレス1097h及び1098hにはチェックサム演算結果レジスタ(CSUM)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。 A checksum operation result register (CSUM) is assigned to the I / O space addresses 97h and 98h and the memory space addresses 1097h and 1098h. R / W is R / W, and initialization factors are S and W.
I/O空間アドレス99h及び9Ah、メモリ空間アドレス1099h及び109AhにはCRC16演算結果レジスタ(CCRC)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。 A CRC16 operation result register (CCRC) is assigned to the I / O space addresses 99h and 9Ah and the memory space addresses 1099h and 109Ah. R / W is R / W, and initialization factors are S and W.
I/O空間アドレス9Bh、メモリ空間アドレス109BhにはPWMコントロールレジスタ(PWMC0)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。 A PWM control register (PWMC0) is assigned to the I / O space address 9Bh and the memory space address 109Bh. R / W is R / W, and initialization factors are S and W.
I/O空間アドレス9Ch、メモリ空間アドレス109ChにはPWMコントロールレジスタ(PWMC1)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。 A PWM control register (PWMC1) is assigned to the I / O space address 9Ch and the memory space address 109Ch. R / W is R / W, and initialization factors are S and W.
I/O空間アドレス9Dh、メモリ空間アドレス109DhにはPWMコントロールレジスタ(PWMC2)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。 A PWM control register (PWMC2) is assigned to the I / O space address 9Dh and the memory space address 109Dh. R / W is R / W, and initialization factors are S and W.
I/O空間アドレス9Eh、メモリ空間アドレス109EhにはPWMコントロールレジスタ(PWMC3)が割り当てられている。そして、R/WはR/W、初期化要因はS,Wとなっている。 A PWM control register (PWMC3) is assigned to the I / O space address 9Eh and the memory space address 109Eh. R / W is R / W, and initialization factors are S and W.
I/O空間アドレスA2h及びA3h及びA4h、メモリ空間アドレス10A2h及び10A3h及び10A4hにはメーカコードレジスタ(MKCODE)が割り当てられている。そして、R/WはRとなっている。なお、初期化要因はない。 A maker code register (MKCODE) is assigned to the I / O space addresses A2h, A3h and A4h, and the memory space addresses 10A2h, 10A3h and 10A4h. And R / W is R. There is no initialization factor.
I/O空間アドレスA5h〜ACh、メモリ空間アドレス10A5h〜10AChには製品コードレジスタ(PRCODE)が割り当てられている。そして、R/WはRとなっている。なお、初期化要因はない。 A product code register (PRCODE) is assigned to the I / O space addresses A5h to ACh and the memory space addresses 10A5h to 10ACh. And R / W is R. There is no initialization factor.
I/O空間アドレスADh〜B0h、メモリ空間アドレス10ADh〜10B0hにはチップコードレジスタ(CPCODE)が割り当てられている。そして、R/WはRとなっている。なお、初期化要因はない。 A chip code register (CPCODE) is assigned to the I / O space addresses ADh to B0h and the memory space addresses 10ADh to 10B0h. And R / W is R. There is no initialization factor.
[RAMプロテクト]
次に、RAMプロテクトについて説明する。RAMプロテクトは、間違った操作によるRAMの書き換え防止する機能である。
[RAM Protect]
Next, the RAM protection will be described. The RAM protect is a function of preventing the RAM from being rewritten by an erroneous operation.
RAMプロテクトの動作は、次のようになる。システムリセット又はWDTリセットが発生した後はRAMプロテクト状態になっている。RAMプロテクト状態ではRAMからデータを読み出すことができるが、RAMへデータを書き込むことができない。RAMへデータを書き込む場合はRAMプロテクトレジスタ(RAMPT)にRAMプロテクトを無効に設定する。RAMPTのRAMアクセス禁止領域の設定を無効に設定すると、HWパラメータのRAMアクセス禁止領域を有効に設定しても、HRAMSTAT=0000hかつHRAMEND=0000hを設定している場合は、RAMアクセス禁止領域は存在しないので、イリーガルアクセスリセットは発生しない。 The operation of the RAM protection is as follows. After the system reset or the WDT reset has occurred, the RAM is in the RAM protected state. In the RAM protected state, data can be read from the RAM, but data cannot be written to the RAM. When writing data to the RAM, the RAM protection is set invalid in the RAM protection register (RAMPT). When the setting of the RAM access prohibition area of the RAMPT is set to invalid, the RAM access prohibition area exists when HRAMSTAT = 0000h and HRAMEND = 0000h are set even if the RAM access prohibition area of the HW parameter is set valid. Therefore, no illegal access reset occurs.
[RAMプロテクトレジスタ]
次に、図24で示した内部機能レジスタにおけるRAMプロテクタレジスタについて図25を用いて説明する。
[RAM protect register]
Next, the RAM protector register in the internal function register shown in FIG. 24 will be described with reference to FIG.
図25に示すように、RAMプロテクトレジスタでは、メモリ空間アドレス1000h(I/O空間アドレス00h)のビット7〜0にシンボルRAMPTが対応付けされている。RAMPTでは、RAMプロテクトの設定と、RAMアクセス禁止領域のコントロールが行われる。そして、00hではRAMアクセス禁止領域が無効に設定され、RAMプロテクトが無効に設定される。また、01hではRAMアクセス禁止領域が無効に設定され、RAMプロテクトが有効に設定される。また、80hではRAMアクセス禁止領域が有効に設定され、RAMプロテクトが無効に設定される。また、81hではRAMアクセス禁止領域が有効に設定され、RAMプロテクトが有効に設定される。これらの値以外では状態が保持される。なお、R/WはR/Wになり、初期値は81hになっている。
As shown in FIG. 25, in the RAM protect register, a symbol RAMPT is associated with
[カウンタタイマ(CTC)]
次に、CTCについて図26を用いて説明する。図11に示すマイクロコンピュータでは、16ビットのCTCが3チャンネル搭載されている。
[Counter timer (CTC)]
Next, CTC will be described with reference to FIG. The microcomputer shown in FIG. 11 has three channels of 16-bit CTC.
CTCの動作は次のようになる。CTCは設定されたタイマ値をダウンカウントし、0000hに達したときに割込コントローラへの割込要求信号を出力する。このときの0000hをターミナルカウントと称する。CTCの各チャンネル(CTC0〜2)は、独立して動作させることができるので、3種類の時間間隔で割込を発生させることができる。 The operation of the CTC is as follows. The CTC counts down the set timer value and outputs an interrupt request signal to the interrupt controller when the timer value reaches 0000h. 0000h at this time is called a terminal count. Each channel of the CTC (CTC0 to CTC2) can be operated independently, so that interrupts can be generated at three types of time intervals.
図26に示すように、CTC0、CTC1は、CTC2のターミナルカウントをクロック源とすることができるので長い時間間隔を容易に作ることができる。例えば、CTC0のクロック源にCTC2のターミナルカウントを設定し、CTC2のタイマ値を2msec、CTC0を65,000カウントに設定した場合は、2msec×65,000=130secをカウントすることができる。CTCは、システムリセットまたはWDTリセットが発生した場合に初期化される。 As shown in FIG. 26, since CTC0 and CTC1 can use the terminal count of CTC2 as a clock source, long time intervals can be easily created. For example, when the terminal count of CTC2 is set to the clock source of CTC0, the timer value of CTC2 is set to 2 msec, and CTC0 is set to 65,000 counts, 2 msec × 65,000 = 130 sec can be counted. The CTC is initialized when a system reset or a WDT reset occurs.
CTCの動作モードは以下のようになる。CTCには、1回だけ動作するワンショットタイマモードと繰り返し動作するインターバルタイマモードの2つの動作モードがある。ワンショットタイマモードは、設定したタイマ値からダウンカウントを行い、ターミナルカウントに達するとダウンカウントを停止する。そして、ターミナルカウントに達したときに割込要求が1回発生する。
タイマ値に5を設定した場合:5→4→3→2→1→0(停止)
The operation mode of the CTC is as follows. The CTC has two operation modes, a one-shot timer mode that operates only once and an interval timer mode that operates repeatedly. The one-shot timer mode counts down from the set timer value, and stops counting down when the terminal count is reached. Then, when the terminal count is reached, one interrupt request is issued.
When the timer value is set to 5: 5 → 4 → 3 → 2 → 1 → 0 (stop)
インターバルタイマモードは、設定したタイマ値からダウンカウントを行い、ターミナルカウントに達すると設定したタイマ値から再びダウンカウントを行う。そして、ターミナルカウントに達するたびに割込要求が繰り返し発生する。
タイマ値に5を設定した場合:5→4→3→2→1→5→4→・・・(繰り返し)
In the interval timer mode, down counting is performed from the set timer value, and when the terminal count is reached, down counting is performed again from the set timer value. Then, each time the terminal count is reached, an interrupt request is repeatedly generated.
When the timer value is set to 5: 5 → 4 → 3 → 2 → 1 → 5 → 4 → ... (repeat)
タイマ値の設定に関して、CTCのタイマ値は、任意値または4種類の固定値(1msec、2msec、4msec、1.4890msec)を設定することができる。 Regarding the setting of the timer value, the timer value of the CTC can be set to an arbitrary value or four types of fixed values (1 msec, 2 msec, 4 msec, 1.4890 msec).
任意値の設定方法は、CTCデータレジスタ(CTC0〜2)にタイマ値を設定し、CTCコントロールレジスタ(TMCNT0〜2)のタイマ値設定方法、動作モード、クロック分周、クロック源を設定する。
CTC0で3msecごとに割込を発生させる設定例
1.CTC0=012Ch タイマ値=300
2.TMCNT=02h タイマ値設定方法=任意値、動作モード=インターバルタイマモード、クロック分周=10μsec、クロック源=MLCKの分周
To set an arbitrary value, a timer value is set in a CTC data register (CTC0 to CTC2), and a timer value setting method, an operation mode, a clock frequency division, and a clock source of a CTC control register (TMCNT0 to TMCNT2) are set.
Example of setting to generate an interrupt every 3 msec in
2. TMCNT = 02h Timer value setting method = arbitrary value, operation mode = interval timer mode, clock division = 10 μsec, clock source = MLCK division
固定値の設定方法は、CTCコントロールレジスタ(TMCNT0〜2)のタイマ値設定方法、動作モード、固定値を設定する。
CTC0で4msecごとに割込を発生させる設定例
1.TMCNT=0Bh タイマ値設定方法=固定値、動作モード=インターバルタイマモード、固定値設定=4msec
CTC0(CTC0データレジスタ)の設定は不要。
The fixed value is set by setting a timer value setting method, an operation mode, and a fixed value of the CTC control registers (TMCNT0 to TMCNT2).
Example of setting CTC0 to generate an interrupt every 4
No need to set CTC0 (CTC0 data register).
CTCの起動は、システムリセット後及びWDTリセット後は、CTCのカウント動作を停止している。
CTCの起動は次の順番で設定する。
1.CTCデータレジスタ(CTC0〜2)にタイマ値を設定する。
2.CTCコントロールレジスタ(TMCNT0〜2)を設定する。
なお、タイマ値設定方法に固定値を設定する場合は、1.のCTCデータレジスタ(CTC0〜2)の設定は不要である。TMCNT0〜2を設定するだけで起動する。CTCがカウント動作中であってもTMCNT0〜2を設定すると、CTC0〜2とTMCNT0〜2の設定内容で更新される。カウント中のタイマ値はCTC0〜2の設定値から再度ダウンカウントする。
After the system reset and the WDT reset, the CTC stops counting operation of the CTC.
Activation of CTC is set in the following order.
1. The timer value is set in the CTC data register (CTC0-2).
2. Set the CTC control registers (TMCNT0-2).
When a fixed value is set in the timer value setting method, 1. Setting of the CTC data registers (CTC0 to CTC2) is unnecessary. It is activated simply by setting TMCNT0 to TMCNT2. If TMCNT0 to TMCNT2 is set even while the CTC is in the counting operation, it is updated with the settings of CTC0 to TMCNT2 and TMCNT0 to TMCNT2. The timer value during counting is counted down again from the set value of CTC0-2.
[CTCコントロールレジスタ]
次に、図24で示した内部機能レジスタにおけるCTCコントロールレジスタについて図27を用いて説明する。
[CTC control register]
Next, the CTC control register in the internal function register shown in FIG. 24 will be described with reference to FIG.
図27に示すように、CTCコントロールレジスタでは、メモリ空間アドレス1001h(I/O空間アドレス01h)のビット7は未使用であり、常に0となる。なお、R/WはRになり、初期値は0になっている。
As shown in FIG. 27, in the CTC control register,
メモリ空間アドレス1001h(I/O空間アドレス01h)のビット6にはシンボルC0CKCELが対応付けされ、メモリ空間アドレス1002h(I/O空間アドレス02h)のビット6にはシンボルC1CKCELが対応付けされている。C0CKCEL、C1CKCELでは、CTC0〜1のクロック源の設定が行われる。そして、0ではMCLKの分周に設定され、1ではCTC2のターミナルカウントに設定される。なお、R/WはR/Wになり、初期値は0になっている。
なお、C0CKCELに0を設定した場合はCTC0をC0CKCELに設定したクロックでダウンカウントする。C0CKCELに1を設定した場合はCTC0をCTC2のターミナルカウントでダウンカウントする。C1CKCELに0を設定した場合はCTC1をC1CKCELに設定したクロックでダウンカウントする。C1CKCELに1を設定した場合はCTC1をCTC2のターミナルカウントでダウンカウントする。 When C0CKCEL is set to 0, CTC0 is counted down by the clock set to C0CKCEL. When C0CKCEL is set to 1, CTC0 is counted down by the terminal count of CTC2. When C1CKCEL is set to 0, CTC1 is counted down by the clock set to C1CKCEL. When C1CKCEL is set to 1, CTC1 is counted down by the terminal count of CTC2.
メモリ空間アドレス1001h(I/O空間アドレス01h)のビット4〜5にはシンボルC0CLKが対応付けされ、メモリ空間アドレス1002h(I/O空間アドレス02h)のビット5〜4にはシンボルC1CLKが対応付けされ、メモリ空間アドレス1003h(I/O空間アドレス03h)のビット4〜5にはシンボルC2CLKが対応付けされている。C0CLK、C1CLK、C2CLKでは、CTC0〜2のクロック分周設定が行われる。そして、MLCK=20MHzの場合に、00では10μsecに設定され、01では1μsecに設定され、10では5μsecに設定され、11では20μsecに設定される。なお、R/WはR/Wになり、初期値は0になっている。
なお、CTC2は、C2CLKに設定したクロックでダウンカウントする。 CTC2 counts down with the clock set to C2CLK.
メモリ空間アドレス1001h(I/O空間アドレス01h)のビット3〜2にはシンボルTMCEL0が対応付けされ、メモリ空間アドレス1002h(I/O空間アドレス02h)のビット2〜3にはシンボルTMCEL1が対応付けされ、メモリ空間アドレス1003h(I/O空間アドレス03h)のビット2〜3にはシンボルTMCEL2が対応付けされている。TMCEL0、TMCEL1、TMCEL2では、CTC0〜2の固定値の設定が行われる。そして、00では1msec(タイマ値=03E8h)に設定され、01では2msec(タイマ値=07D0h)に設定され、10では4msec(タイマ値=0FA0h)に設定され、11では1.489msec(タイマ値=05D1h)に設定される。なお、R/WはR/Wになり、初期値は0になっている。
なお、TMCEL0〜2の設定時間は、HWパラメータのシステム設定(HSYSCNT)のMCLK周波数設定(HSYSCLK)がシステムクロック(MCLK)と同じ周波数に設定された場合に所定の時間となる。 The setting time of TMCEL0 to TMCEL2 is a predetermined time when the MCLK frequency setting (HSYSCLK) of the system setting (HSYSCNT) of the HW parameter is set to the same frequency as the system clock (MCLK).
メモリ空間アドレス1001h(I/O空間アドレス01h)のビット1にはシンボルTMMOD0が対応付けされ、メモリ空間アドレス1002h(I/O空間アドレス02h)のビット1にはシンボルTMMOD1が対応付けされ、メモリ空間アドレス1003h(I/O空間アドレス03h)のビット1にはシンボルTMMOD2が対応付けされている。TMMOD0、TMMOD1、TMMOD2では、CTC0〜2の動作モードの設定が行われる。そして、0ではワンショットタイマモードに設定され、1ではインターバルタイマモードに設定される。なお、R/WはR/Wになり、初期値は0になっている。
The symbol TMMOD0 is associated with
メモリ空間アドレス1001h(I/O空間アドレス01h)のビット0にはシンボルTMFVM0が対応付けされ、メモリ空間アドレス1002h(I/O空間アドレス02h)のビット0にはシンボルTMFVM1が対応付けされ、メモリ空間アドレス1003h(I/O空間アドレス03h)のビット1にはシンボルTMFVM2が対応付けされている。TMFVM0、TMFVM1、TMFVM2では、CTC0〜2のタイマ値設定方法の設定が行われる。そして、0では任意値に設定され、1では固定値に設定される。なお、R/WはR/Wになり、初期値は0になっている。
Symbol TMFVM0 is associated with
なお、TMFVM0〜2に0を設定した場合はTMCEL0〜2の設定は無効である。TMFVM0〜2に1を設定した場合はC0CKSEL、C1CKSEL、C0CLK、C1CLK、C2CLKの設定は無効である。このとき、TMSEL0〜2の設置値により、CTC0〜2のタイマ値が03E8h、07D0h、0FA0h、05D1hのいずれかでかつクロック分周は1μsecで動作する。なお、C0CLK、C1CLK、C2CLK、CTCデータレジスタ(CTC0〜2)の設定値には影響を与えない。 When 0 is set to TMFVM0 to 2, the setting of TMCEL0 to 2 is invalid. When 1 is set to TMFVM0 to TMFVM2, the settings of C0CKSEL, C1CKSEL, C0CLK, C1CLK, and C2CLK are invalid. At this time, the timer values of CTC0 to CTC2 are any one of 03E8h, 07D0h, 0FA0h, and 05D1h, and the clock division is performed at 1 μsec, depending on the set values of TMSEL0 to TMSEL2. It does not affect the set values of C0CLK, C1CLK, C2CLK, and the CTC data registers (CTC0 to CTC2).
[CTCデータレジスタ]
次に、図24で示した内部機能レジスタにおけるCTCコントロールレジスタについて図28を用いて説明する。
[CTC data register]
Next, the CTC control register in the internal function register shown in FIG. 24 will be described with reference to FIG.
図28に示すように、CTCコントロールレジスタでは、メモリ空間アドレス1004h(I/O空間アドレス04h)のビット7〜0にはシンボルCTC0(下位)が対応付けされ、メモリ空間アドレス1005h(I/O空間アドレス05h)のビット7〜0にはシンボルCTC0(上位)が対応付けされている。CTC0ではCTC0のタイマ値の設定が行われる。読み出す場合はカウント値が読み出される。書き込む場合は0000hに65,536、0001hに1、以降1ずつ書き込まれる値が増えていき、FFFFhに65,535が書き込まれる。なお、R/WはR/Wになり、初期値はFFFFhになっている。
As shown in FIG. 28, in the CTC control register, symbol CTC0 (lower order) is associated with
メモリ空間アドレス1006h(I/O空間アドレス06h)のビット7〜0にはシンボルCTC1(下位)が対応付けされ、メモリ空間アドレス1007h(I/O空間アドレス07h)のビット7〜0にはシンボルCTC1(上位)が対応付けされている。CTC1ではCTC1のタイマ値の設定が行われる。その他、CTC1はCTC0と同様である。
メモリ空間アドレス1008h(I/O空間アドレス08h)のビット7〜0にはシンボルCTC2(下位)が対応付けされ、メモリ空間アドレス1009h(I/O空間アドレス09h)のビット7〜0にはシンボルCTC2(上位)が対応付けされている。CTC2ではCTC2のタイマ値の設定が行われる。その他、CTC2はCTC0と同様である。
Bits 7-0 of memory space address 1008h (I /
以上のように、CTCデータレジスタではCTC0〜2のタイマ値を設定する。0000hを設定した場合は65,536が設定される。CTCコントロールレジスタ(TMCNT0〜2)のTMFVM0〜2に1(固定値)を設定した場合は、このレジスタは不要である。 As described above, the timer values of CTC0 to CTC2 are set in the CTC data register. When 0000h is set, 65,536 is set. This register is unnecessary when 1 (fixed value) is set in TMFVM0 to TMFVM2 of the CTC control register (TMCNT0 to 2).
また、このレジスタからCTC0〜2のカウント値を読み出すことができる。CTCコントロールレジスタ(TMCNT0〜2)のTMFVM0〜2に1(固定値)を設定した場合でもカウント値を読み出すことができる。カウント値の読み出しはCTCを起動した後に行う。 Also, the count values of CTC0 to CTC2 can be read from this register. The count value can be read even when 1 (fixed value) is set in TMFVM0 to 2 of the CTC control registers (TMCNT0 to 2). The reading of the count value is performed after activating the CTC.
2バイトの読み出し命令を使用してカウント値を読み出した場合は、更新中のカウント値が読み出されることはない。1バイトの読み出し命令で上位と下位を別々に読み出した場合は、途中でカウント値が更新される場合がある。 When the count value is read using the 2-byte read instruction, the count value being updated is not read. When the upper and lower bits are separately read by a 1-byte read command, the count value may be updated halfway.
[ウォッチドッグタイマ(WDT)]
ウォッチドッグタイマ(WDT)は、ノイズなどによるプログラムの動作異常を速やかに検出し、WDTリセットを発生することにより正常な状態に戻すことができる。
[Watchdog timer (WDT)]
The watchdog timer (WDT) can quickly detect a program operation abnormality due to noise or the like, and return to a normal state by generating a WDT reset.
WDTは以下のように動作する。WDTは、0.1μsec単位で0.1secから12.7sec(MCLK=20MHzの場合)の時間をWDTコントロールレジスタ(WDTCNT)で設定することができる。設定した時間内にWDTをクリアしないとWDTリセットが発生し、CPUコア及び内部機能がリセットされる。WDTをクリアした時点から設定した時間内に再びWDTをクリアしないとWDTリセットが発生するので継続してWDTをクリアする必要がある。 The WDT operates as follows. For the WDT, a time of 0.1 sec to 12.7 sec (in the case of MCLK = 20 MHz) can be set in WDT control registers (WDTCNT) in 0.1 μsec units. If the WDT is not cleared within the set time, a WDT reset occurs, and the CPU core and internal functions are reset. If the WDT is not cleared again within a set time from the time when the WDT was cleared, a WDT reset occurs, so it is necessary to continuously clear the WDT.
WDTリセットが発生した場合は、その要因を外部信号入力/リセット要因レジスタ(PINSTS)により確認することができる。WDTはシステムリセットが発生した場合に初期化される。 When a WDT reset occurs, its cause can be confirmed by an external signal input / reset cause register (PINSTS). WDT is initialized when a system reset occurs.
WDTは、WDTコントロールレジスタ(WDTCNT)へ同じ値を2回連続して設定すると起動する。一度起動すると停止させることはできず、WDTCNTの設定値を変更することもできない。 The WDT is activated when the same value is set in the WDT control register (WDTCNT) twice consecutively. Once activated, it cannot be stopped and the set value of WDTCNT cannot be changed.
図29に示すように、WDTのクリアには、単純クリアモードと循環クリアモードがある。単純クリアモードは、設定時間以外にWDTクリアレジスタ(WDTCLR0)に18hを設定してWDTをクリアする。以降、設定時間以外にWDTCLR0に18hを繰り返す。循環クリアモードは、最初の設定時間以内にWDTクリアレジスタ(WDTCLR1)に60hを設定してWDTをクリアする。次の設定時間以内にWDTクリアレジスタ(WDTCLR2)に03hを設定してWDTをクリアし、その次の設定時間以内にWDTクリアレジスタ(WDTCLR3)に24hを設定してWDTをクリアする。以後、この順番の設定を繰り返す。異なる順番や異なる値を設定した場合は、WDTはクリアされず、WDTの動作には影響を与えない。 As shown in FIG. 29, the clearing of the WDT includes a simple clear mode and a cyclic clear mode. In the simple clear mode, the WDT is cleared by setting 18h in the WDT clear register (WDTCLR0) other than the set time. Thereafter, 18h is repeated for WDTCLR0 except for the set time. In the circulation clear mode, the WDT is cleared by setting 60h in the WDT clear register (WDTCLR1) within the first set time. Within the next set time, the WDT clear register (WDTCLR2) is set to 03h to clear the WDT, and within the next set time, the WDT clear register (WDTCLR3) is set to 24h to clear the WDT. Thereafter, the setting in this order is repeated. If a different order or a different value is set, the WDT is not cleared, and does not affect the operation of the WDT.
[WDTコントロールレジスタ]
次に、図24で示した内部機能レジスタにおけるCTCコントロールレジスタについて図30を用いて説明する。
[WDT control register]
Next, the CTC control register in the internal function register shown in FIG. 24 will be described with reference to FIG.
図30に示すように、WDTコントロールレジスタでは、メモリ空間アドレス100Ah(I/O空間アドレス0Ah)のビット7にはシンボルWDTNDが対応付けされている。WDTNDでは、クリアモードの設定が行われる。そして、0では単純クリアモードに設定され、1では循環クリアモードに設定される。なお、R/WはR/Wになり、初期値は0になっている。
As shown in FIG. 30, in the WDT control register, symbol WDTND is associated with
メモリ空間アドレス100Ah(I/O空間アドレス0Ah)のビット6〜0にはシンボルWDTが対応付けされている。WDTでは、タイマ設定が行われる。そして、MCLK=20MHzの場合に、00hではWDTの停止、01hで0.1μsecを最小値として設定することができ、7Fhで12.7secを最大値として設定することができる。なお、R/WはR/Wになり、初期値は0になっている。
なお、WDTCNTを設定する場合は、15μsec(MCLK=20MHzの場合)以内に同じ値を2回設定する。WDTCNTは一度設定すると変更できない。WDTCNTに00hを2回連続して設定するとWDTは起動しなくなる。WDTを起動した後に00hを2回連続して設定してもWDTを停止させることができない。 When setting WDTCNT, the same value is set twice within 15 μsec (when MCLK = 20 MHz). Once set, WDTCNT cannot be changed. If 00h is set to WDTCNT twice consecutively, WDT will not start. Even if 00h is set twice consecutively after starting the WDT, the WDT cannot be stopped.
[WDTクリアレジスタ]
次に、図24で示した内部機能レジスタにおけるWDTクリアレジスタについて図31を用いて説明する。
[WDT clear register]
Next, the WDT clear register in the internal function register shown in FIG. 24 will be described with reference to FIG.
図31に示すように、WDTクリアレジスタでは、メモリ空間アドレス1008h(I/O空間アドレス08h)のビット7〜0にはシンボルWDTCLR0が対応付けされている。WDTCLR0では、単純クリアモードのWDTクリアの設定が行われる。そして、18hに設定される。なお、R/WはWになる。
As shown in FIG. 31, in the WDT clear register, the symbol WDTCLR0 is associated with
メモリ空間アドレス1009h(I/O空間アドレス09h)のビット7〜0にはシンボルWDTCLR1が対応付けされている。WDTCLR1では、循環クリアモードのWDTクリアの設定が行われる。そして、60hに設定される。なお、R/WはWになる。
The symbol WDTCLR1 is associated with
メモリ空間アドレス100Dh(I/O空間アドレス0Dh)のビット7〜0にはシンボルWDTCLR2が対応付けされている。WDTCLR2では、循環クリアモードのWDTクリアの設定が行われる。そして、03hに設定される。なお、R/WはWになる。
The symbol WDTCLR2 is associated with
メモリ空間アドレス100Eh(I/O空間アドレス0Eh)のビット7〜0にはシンボルWDTCLR2が対応付けされている。WDTCLR3では、循環クリアモードのWDTクリアの設定が行われる。そして、24hに設定される。なお、R/WはWになる。
なお、循環クリアモードのWDTクリアの順番(60h→03h→24h)は、WDTリセットが発生した場合は保持される。システムリセットが発生した場合は初期化される。 The order of WDT clear (60h → 03h → 24h) in the circulation clear mode is maintained when a WDT reset occurs. Initialized when a system reset occurs.
[割込コントローラ]
次に、割込コントローラについて説明する。図32を割込コントローラのブロック図である。
[Interrupt controller]
Next, the interrupt controller will be described. FIG. 32 is a block diagram of the interrupt controller.
割込動作として、まず、割込要因と割込の設定が行われる。 As an interrupt operation, first, an interrupt factor and an interrupt are set.
割込要因は、割込入力/汎用入力端子(INP)の入力信号とCTC0〜2のターミナルカウントがあり、次の場合に割込が発生する。
1.INP端子がLレベルになった場合
2.CTC0がターミナルカウントに達した場合
3.CTC1がターミナルカウントに達した場合
4.CTC2がターミナルカウントに達した場合
The interrupt factors include an input signal of an interrupt input / general-purpose input terminal (INP) and terminal counts of CTC0 to CTC2. An interrupt occurs in the following cases.
1. 1. When the INP terminal goes low. 2. When CTC0 reaches the terminal count. 3. When CTC1 reaches the terminal count. When CTC2 reaches terminal count
INP端子を割込の入力信号として使用する場合は、HWパラメータのリセット期間/INP端子設定(HRSTCNT)のINP端子機能設定(HPORTEN)に1(割込入力端子として使用する)を設定する。 When the INP terminal is used as an interrupt input signal, 1 (used as an interrupt input terminal) is set in the INP terminal function setting (HPORTEN) of the reset period / INP terminal setting (HRSTCNT) of the HW parameter.
INP端子はHRSTCNTの割込入力端子設定(HPORTMD)でINT割込入力又はNMI割込入力を選択することができる。 The INP terminal can select an INT interrupt input or an NMI interrupt input by setting an interrupt input terminal (HPORTMD) of the HRSTCNT.
4つの割込要因は、割込許可レジスタ(IER)により個別に割込許可の設定と禁止を設定することができる。また、割込優先順位レジスタ(IPR)により割込の優先順位を設定することができる。 The four interrupt factors can be individually set to enable or disable the interrupt by an interrupt enable register (IER). Further, the priority of interrupt can be set by an interrupt priority register (IPR).
NMIを除く割込は、CPUコアのプログラムステータスワード(PSW)に割り当てられている割込マスタ許可フラグ(IMF)により、割込コントローラとは独立して割込要求の受付許可と受付禁止とを設定することができる。 For interrupts other than NMI, the acceptance of the interrupt request and the inhibition of the acceptance of the interrupt request are made independently of the interrupt controller by an interrupt master permission flag (IMF) assigned to the program status word (PSW) of the CPU core. Can be set.
IMFの設定はEI(IMF=1)命令、DI(IMF=0)により行う。 The setting of the IMF is performed by an EI (IMF = 1) instruction and DI (IMF = 0).
CPUコアが割込許可状態(IMF=1)の場合に、割込コントローラが割込要求信号をCPUコアに出力する。 When the CPU core is in the interrupt permitted state (IMF = 1), the interrupt controller outputs an interrupt request signal to the CPU core.
NMI割込の場合は割込許可/禁止の状態にかかわらず割込要求信号をCPUコアへ出力する。 In the case of an NMI interrupt, an interrupt request signal is output to the CPU core regardless of whether the interrupt is enabled or disabled.
割込要求レジスタ(IRR)、割込許可レジスタ(IER)、割込優先順位レジスタ(IPR)は、システムリセット又はWDTリセットが発生した場合に初期化される。 The interrupt request register (IRR), interrupt enable register (IER), and interrupt priority register (IPR) are initialized when a system reset or a WDT reset occurs.
割込処理は、次のステップで開始される。
1.割込が発生すると、割込要因を割込要求レジスタ(IRR)にラッチする。
2.IER,IPR,IMFの設定状態に従い、CPUコアへ割込要求信号を出力する。
3.CPUコアは、M1サイクル中に割込要求の有無を判断する。
4.割込要求があった場合は、そのM1サイクルでフェッチした命令は破棄され、プログラムカウンタ(PC)は更新されない。このPCは下記「8.」においてそのスタックにプッシュされるので、割込処理終了時はこのPCからプログラムの実行を再開する。LDIR、CPIR命令実行中は、処理を繰り返す都度M1サイクルがあるが、その際も同様に割込要求の有無を判断する。
5.M1とIPEQ0を同時にLレベルとし、CPUコアが割込を受け付けたことを示す。
6.IRRの割込要因に対応するビットを0にクリアする。
7.割込要因に応じた割込処理の先頭アドレスを割込処理用ベクタテーブルから読み出す。
8.PSW、PCの上位バイト(PCH)、PCの下位バイト(PCL)の順にスタックにプッシュする。
9.IMFを0にクリアし、割込禁止状態にする。
10.割込処理用ベクタテーブルから読み出したアドレスをPCカウンタにセットする。
11.割込処理を開始する。
なお、上記処理は割込要求がINT割込とCTC0〜2割込の場合である。NMI割込の場合は、IER、IPR、IMFの設定に関係なく、割込要求信号を出力する。
The interrupt processing is started in the next step.
1. When an interrupt occurs, the cause of the interrupt is latched in an interrupt request register (IRR).
2. An interrupt request signal is output to the CPU core according to the setting state of IER, IPR, and IMF.
3. The CPU core determines whether there is an interrupt request during the M1 cycle.
4. If there is an interrupt request, the instruction fetched in the M1 cycle is discarded, and the program counter (PC) is not updated. Since this PC is pushed onto the stack in "8." below, execution of the program is restarted from this PC when the interrupt processing is completed. While the LDIR and CPIR instructions are being executed, there is an M1 cycle each time the processing is repeated. At this time, the presence or absence of an interrupt request is also determined.
5. M1 and IPEQ0 are simultaneously set to L level, indicating that the CPU core has accepted the interrupt.
6. The bit corresponding to the interrupt cause of IRR is cleared to 0.
7. The head address of the interrupt processing corresponding to the interrupt factor is read from the interrupt processing vector table.
8. The data is pushed onto the stack in the order of PSW, PC upper byte (PCH), and PC lower byte (PCL).
9. The IMF is cleared to 0, and the interrupt is disabled.
10. The address read from the vector table for interrupt processing is set in the PC counter.
11. Start interrupt processing.
The above processing is performed when the interrupt request is an INT interrupt and CTC0 to CTC2 interrupts. In the case of an NMI interrupt, an interrupt request signal is output regardless of the settings of IER, IPR, and IMF.
割込受付処理でPSWとPCは自動的にスタックに退避されるが、CPUコアの汎用レジスタ(W,A,B,C,D,E,H,L,IX,IY)は自動的に退避されない。必要に応じてプログラムにより退避させる。 PSW and PC are automatically saved on the stack during interrupt acceptance processing, but general-purpose registers (W, A, B, C, D, E, H, L, IX, IY) of the CPU core are automatically saved. Not done. Evacuate the program as necessary.
なお。汎用レジスタの退避は、PUSH命令により方法や、汎用レジスタのバンクを切り替える方法がある。例えば、割込処理が多重に起動しないシステムの場合は、通常処理は汎用レジスタのバンク0を使用し、割込処理おn先頭でLD、RBS,1(RBS=1)命令を実行し、バンク1に切り替えることでバンク0のレジスタを退避することができる。
In addition. There are a method of saving general-purpose registers by a PUSH instruction and a method of switching banks of general-purpose registers. For example, in the case of a system in which the interrupt processing is not started in multiples, the normal processing uses the
レジスタバンクセレクタ(RBS)は、PSWに含まれるので割込処理のリターン命令(RETIまたはRETN)を実行するとPSWがスタックから復帰し、自動的にバンク0に切り替わる。
Since the register bank selector (RBS) is included in the PSW, when the return instruction (RETI or RETN) of the interrupt processing is executed, the PSW returns from the stack and automatically switches to
割込処理の終了は、リターン命令(RETIまたはRETN)の実行以外の特別な措置は不要である。リターン命令を実行すると、PSWとPCがスタックから復帰されて割込処理開始前の処理に戻る。割込要因のクリアは、割込要求受付時に割込コントローラが自動的に行う。IMFやRBSはPSWに含まれるので、リターン命令により自動的にスタックから復帰される。したがって、割込処理終了前にEI命令やRBS切替を実行する必要はない。 No special measures other than execution of the return instruction (RETI or RETN) are required to end the interrupt processing. When the return instruction is executed, the PSW and the PC are returned from the stack and return to the processing before the start of the interrupt processing. The clearing of the interrupt factor is automatically performed by the interrupt controller when the interrupt request is received. Since the IMF and the RBS are included in the PSW, a return instruction automatically returns from the stack. Therefore, there is no need to execute the EI command or the RBS switching before the end of the interrupt processing.
なお、EI命令を実行するとすぐに割込を受け付けることができるので、EI命令とリターン命令で連続して記述するとリターン命令をフェッチするときに新たな割込を受け付けることがある。 Since the interrupt can be accepted immediately after the execution of the EI instruction, if the EI instruction and the return instruction are described consecutively, a new interrupt may be accepted when the return instruction is fetched.
図33はCTC0で割込処理を実行する場合の割込処理手順の例を示す。図33の例では詳述すると以下のようになる。
1.メイン(Main)ルーチンでは汎用レジスタのバンク0(RBS=0)を使用する。
2.CTC0割込ルーチンでは汎用レジスタのバンク1(RBS=1)を使用する。
3.割込処理の終了はRETIの実行のみとなる。
FIG. 33 shows an example of the interrupt processing procedure when executing the interrupt processing in CTC0. The details of the example of FIG. 33 are as follows.
1. In the main routine, bank 0 (RBS = 0) of general-purpose registers is used.
2. In the CTC0 interrupt routine, bank 1 (RBS = 1) of the general-purpose register is used.
3. The end of the interrupt processing is only execution of RETI.
[割込要求レジスタ]
次に、図24で示した内部機能レジスタにおける割込要求レジスタについて図34を用いて説明する。割込要求レジスタは、割込要求信号をラッチするレジスタである。
[Interrupt request register]
Next, an interrupt request register in the internal function register shown in FIG. 24 will be described with reference to FIG. The interrupt request register is a register that latches an interrupt request signal.
図34に示すように、割込要求レジスタでは、メモリ空間アドレス1023h(I/O空間アドレス23h)のビット7にはシンボルIRR3が対応付けされている。IRR3では、CTC2割込要求の設定が行われる。そして、読み出す場合は、0のときに割込要求なし設定され、1のときに割込要求ありに設定される。また、書き込む場合は、0のときにクリアに設定され、1のときに何もしないに設定される。なお、R/WはR/Wになり、初期値は0になっている。
As shown in FIG. 34, in the interrupt request register, the symbol IRR3 is associated with
メモリ空間アドレス1023h(I/O空間アドレス23h)のビット6にはシンボルIPR2が対応付けされている。IRR2では、CTC1割込要求の設定が行われる。その他、IRR2はIRR3と同様である。
The symbol IPR2 is associated with
メモリ空間アドレス1023h(I/O空間アドレス23h)のビット5にはシンボルIPR1が対応付けされている。IRR1では、CTC0割込要求の設定が行われる。その他、IRR1はIRR3と同様である。
The symbol IPR1 is associated with
メモリ空間アドレス1023h(I/O空間アドレス23h)のビット4にはシンボルIPR0が対応付けされている。IRR0では、INT/NMI割込要求の設定が行われる。その他、IRR0はIRR3と同様である。
メモリ空間アドレス1023h(I/O空間アドレス23h)のビット3〜30未使用であり、常に0である。なお、R/WはRになり、初期値は0になっている。
なお、CPUコアが割込要求を受け付けると割込コントローラが自動的に0にクリアする。0を設定するとクリアすることはできるが1を設定しても割込要求をセットすることはできない。 When the CPU core receives the interrupt request, the interrupt controller automatically clears the interrupt request to zero. If 0 is set, it can be cleared, but if 1 is set, an interrupt request cannot be set.
IRRは割込許可レジスタ(IER)の前段に位置しているので、IERで割込禁止に設定されている割込要因であってもラッチする。割込が禁止されている間に発生した割込要求を無視する場合は割込を許可する前にIRRに0を設定して割込要求をクリアする。 Since the IRR is located before the interrupt enable register (IER), the IRR is latched even if the interrupt factor is set to disable the interrupt by the IER. When ignoring an interrupt request generated while the interrupt is prohibited, the interrupt request is cleared by setting IRR to 0 before permitting the interrupt.
[割込許可レジスタ]
次に、図24で示した内部機能レジスタにおける割込許可レジスタについて図35を用いて説明する。割込許可レジスタは、割込要求信号を許可するレジスタである。
[Interrupt enable register]
Next, the interrupt permission register in the internal function register shown in FIG. 24 will be described with reference to FIG. The interrupt permission register is a register that permits an interrupt request signal.
図35に示すように、割込許可レジスタでは、メモリ空間アドレス1024h(I/O空間アドレス24h)のビット7にはシンボルIER3が対応付けされている。IER3では、CTC2割込許可の設定が行われる。そして、0のときに割込禁止に設定され、1のときに割込許可に設定される。なお、R/WはR/Wになり、初期値は0になっている。
As shown in FIG. 35, in the interrupt permission register, the symbol IER3 is associated with the
メモリ空間アドレス1024h(I/O空間アドレス24h)のビット6にはシンボルIER2が対応付けされている。IER2では、CTC1割込許可の設定が行われる。その他、IER2はIER3と同様である。
Symbol IER2 is associated with
メモリ空間アドレス1024h(I/O空間アドレス24h)のビット5にはシンボルIER1が対応付けされている。IER1では、CTC0割込許可の設定が行われる。その他、IER1はIER3と同様である。
メモリ空間アドレス1024h(I/O空間アドレス24h)のビット4にはシンボルIER0が対応付けされている。IER0では、INT割込許可の設定が行われる。その他、IER0はIRR3と同様である。
メモリ空間アドレス1024h(I/O空間アドレス24h)のビット0〜3は未使用であり、常に0である。なお、R/WはRになり、初期値は0になっている。
なお、割込要求レジスタ(IER)に割込要求信号がラッチされた状態で割込を許可すると、すぐにCPUコアに対して割込要求信号を出力する。 If an interrupt is permitted while the interrupt request signal is latched in the interrupt request register (IER), the interrupt request signal is immediately output to the CPU core.
[割込優先順位レジスタ]
次に、図24で示した内部機能レジスタにおける割込許可レジスタについて図36を用いて説明する。割込優先順位レジスタは、割込要因(INT、CTC0、CTC1、CTC2)の優先順位を設定するレジスタである。
[Interrupt priority register]
Next, an interrupt permission register in the internal function register shown in FIG. 24 will be described with reference to FIG. The interrupt priority register is a register for setting the priority of the interrupt factors (INT, CTC0, CTC1, CTC2).
図36に示すように、割込優先順位レジスタでは、メモリ空間アドレス1025h(I/O空間アドレス25h)のビット7〜6にはシンボルIPR3が対応付けされている。IPR3では、CTC2優先順位の設定が行われる。そして、00のときに優先順位が最も低いレベル0に設定される。また、01のときに00よりも優先順位が高く、かつ10よりも優先順位が低いレベル1に設定される。また、10のときに01よりも優先順位が高く、かつ11よりも優先順位が低いレベル2に設定される。また、11のときに最も優先順位が高いレベル3に設定される。なお、R/WはR/Wになり、初期値は0になっている。
As shown in FIG. 36, in the interrupt priority register, the symbol IPR3 is associated with
メモリ空間アドレス1025h(I/O空間アドレス25h)のビット5〜4にはシンボルIPR2が対応付けされている。IPR2では、CTC1優先順位の設定が行われる。その他、IPR2はIPR3と同様である。
メモリ空間アドレス1025h(I/O空間アドレス25h)のビット3〜2にはシンボルIPR1が対応付けされている。IPR1では、CTC0優先順位の設定が行われる。その他、IPR1はIPR3と同様である。
メモリ空間アドレス1025h(I/O空間アドレス25h)のビット1〜0にはシンボルIPR0が対応付けされている。IPR0では、INT優先順位の設定が行われる。その他、IPR0はIPR3と同様である。
なお、複数の割込要因が同時に発生した場合は、優先順位の高い割込要因がCPUコアに対して割込要求信号を出力する。優先順位は4レベルあり、レベル3が最上位、レベル0が最下位である。また、同レベルであれば優先順の高い方からINT,CTC0,CTC1,CTC2の順となっている。
If a plurality of interrupt factors occur at the same time, the interrupt factor with a higher priority outputs an interrupt request signal to the CPU core. There are four levels of priority, with
[外部信号入力/リセット要因レジスタ]
次に、図24で示した内部機能レジスタにおける割込許可レジスタについて図37を用いて説明する。外部信号入力/リセット要因レジスタは、割込入力/汎用入力端子(INP)と乱数外部ラッチ0〜2端子(EXLATCH0〜2)の状態及びリセット発生要因を知ることができる。
[External signal input / reset source register]
Next, an interrupt permission register in the internal function register shown in FIG. 24 will be described with reference to FIG. The external signal input / reset factor register can know the state of the interrupt input / general-purpose input terminal (INP) and the random number
図37に示すように、外部信号入力/リセット要因レジスタでは、メモリ空間アドレス1026h(I/O空間アドレス26h)のビット7にはシンボルWDTRSTが対応付けされている。WDTRSTでは、WDTリセット発生の設定が行われる。そして、読み出す場合は、0のときに発生していない、1のときに発生したと設定される。また、書き込む場合は、0のときにクリア、1のときに何もしないに設定される。なお、R/WはR/Wになり、初期値は0になっている。
As shown in FIG. 37, in the external signal input / reset factor register, the symbol WDTRST is associated with
メモリ空間アドレス1026h(I/O空間アドレス26h)のビット6にはシンボルIARSTが対応付けされている。IARSTでは、イリーガルリセットの発生の設定が行われる。その他、IARSTはWDTRSTと同様である。
The symbol IARST is associated with
メモリ空間アドレス1026h(I/O空間アドレス26h)のビット5にはシンボルINTRSTが対応付けされている。INTRSTでは、定期リセットの発生の設定が行われる。その他、INTSTはWDTRSTと同様である。
The symbol INTRST is associated with
メモリ空間アドレス1026h(I/O空間アドレス26h)のビット4は未使用であり、常に0である。なお、R/WはRになり、初期値は0になっている。
メモリ空間アドレス1026h(I/O空間アドレス26h)のビット3にはシンボルINPSが対応付けされている。INPSでは、INP端子番号の設定が行われる。そして、0のときに端子番号=Lに設定され、1のときに端子番号=Rに設定される。なお、R/WはRになる。
The symbol INPS is associated with
メモリ空間アドレス1026h(I/O空間アドレス26h)のビット2にはシンボルLTC2が対応付けされている。LTC2では、EXLATCH2端子番号の設定が行われる。その他、LTC2はINPSと同様である。
The symbol LTC2 is associated with
メモリ空間アドレス1026h(I/O空間アドレス26h)のビット1にはシンボルLTC1が対応付けされている。LTC1では、EXLATCH1端子番号の設定が行われる。その他、LTC1はINPSと同様である。
The symbol LTC1 is associated with
メモリ空間アドレス1026h(I/O空間アドレス26h)のビット0にはシンボルLTC0が対応付けされている。LTC0では、EXLATCH0端子番号の設定が行われる。その他、LTC0はINPSと同様である。
The symbol LTC0 is associated with
なお、WDTRST、IARST、INTRSTは、対応するリセット要因の状態がセットされる。WDTRST、IARST、INTRSTは、システムリセットが発生するまで保持され、システムリセット後に0にクリアされる。WDTRST、IARST、INTRSTをクリアする場合は0を設定する。 For WDTRST, IARST, and INTRST, the state of the corresponding reset factor is set. WDTRST, IARST, and INTRST are held until a system reset occurs, and are cleared to 0 after the system reset. To clear WDTRST, IARST, and INTRST, set 0.
INPS、LTC2、LTC1、LTC0は、対応する端子の信号レベルがそのままセットされる。INPSは、HWパラメータのリセット期間/INP端子設定(HRSTCNT)のINP端子機能設定(HPORTEN)の設定状態にかかわらずINP端子の信号レベルがセットされる。 INPS, LTC2, LTC1, and LTC0 have the signal levels of the corresponding terminals set as they are. In the INPS, the signal level of the INP terminal is set regardless of the setting state of the INP terminal function setting (HPORTEN) in the reset period of the HW parameter / INP terminal setting (HRSTCNT).
INP端子にはCPUクロックで5クロックのノイズフィルタが挿入されている。EXLATCH0〜2端子には乱数クロックで128クロックのノイズフィルタが挿入されている。したがって、それぞれ5クロック又は128クロックの連続したLレベル信号(又はHレベル信号)が入力された場合に0(又は1)がセットされる。 A noise filter of five CPU clocks is inserted in the INP terminal. A noise filter of 128 random number clocks is inserted in the EXLATCH0 to EXLATCH2 terminals. Therefore, when a continuous L level signal (or H level signal) of 5 clocks or 128 clocks is input, 0 (or 1) is set.
PINSTSはシステムリセットが発生した場合に初期化される。 PINSTS is initialized when a system reset occurs.
[乱数の動作]
乱数回路として、8ビット固定長乱数回路、16ビット固定長乱数回路、8ビット可変長乱数回路、16ビット可変長乱数回路を備えている。システムリセット後の1週目のスタート値はシステムリセットの都度、更新される。乱数列のパターンは自動更新される。16ビット固定長乱数はビット並びを転置することができる。16ビット固定長乱数は動作クロックをMCLKの1/2又はEXCLKの1/2から選択できる。3本の乱数外部ラッチ端子により、乱数値をラッチすることができる。乱数回路の異常を判定する機能を搭載している。
[Operation of random number]
The random number circuit includes an 8-bit fixed-length random number circuit, a 16-bit fixed-length random number circuit, an 8-bit variable-length random number circuit, and a 16-bit variable-length random number circuit. The start value of the first week after the system reset is updated every time the system is reset. The pattern of the random number sequence is automatically updated. The 16-bit fixed-length random number can transpose the bit sequence. For the 16-bit fixed-length random number, the operation clock can be selected from 又 は of MCLK or X of EXCLK. A random number value can be latched by three random number external latch terminals. Equipped with a function to determine the abnormality of the random number circuit.
8ビット固定長乱数回路と16ビット固定長乱数回路は、システムリセットまたはWDTリセット後に自動的に起動する。また、8ビット可変長乱数回路と16ビット可変長乱数回路は、システムリセットまたはWDTリセット後は停止しており、最大値を設定すると起動する。また、乱数回路はシステムリセットまたはWDTリセットで初期化される。定期リセット、イリーガルアクセスリセットの発生では乱数機能には影響を与えず動作が継続する。 The 8-bit fixed-length random number circuit and the 16-bit fixed-length random number circuit start automatically after a system reset or a WDT reset. The 8-bit variable-length random number circuit and the 16-bit variable-length random number circuit are stopped after the system reset or the WDT reset, and are activated when the maximum value is set. The random number circuit is initialized by a system reset or a WDT reset. When a periodic reset or illegal access reset occurs, the operation continues without affecting the random number function.
乱数回路は、初期値をスタート値としてとびとびの値をとりながら乱数値を更新し、すべての値を重複することなく1回ずつ出現させる。すべての値が出現した後は別な値をスタート値とし、かつ数列の出現パターンを別なパターンに変更し、再び全ての値をとびとびの値をとりながら更新していく。 The random number circuit updates the random number value while taking discrete values with the initial value as a start value, and causes all values to appear once without duplication. After all the values have appeared, another value is used as a start value, the appearance pattern of the sequence is changed to another pattern, and all the values are updated again while taking discrete values.
乱数値は、乱数クロック(MCLKの1/2又はEXCLKの1/2)の立ち上がりで更新される。乱数外部ラッチ0〜2端子(EXLATCH0〜2)へ入力される信号により、乱数値をラッチすることができる。
The random number value is updated at the rising edge of the random number clock (1/2 of MCLK or 1/2 of EXCLK). A random number value can be latched by a signal input to the random number
外部ラッチ信号モードレジスタ(RDEXLM)によりラッチデータレジスタの保持又は更新を設定することができる。RDEXLMに0(保持)を設定すると、乱数ラッチデータレジスタがクリアされた状態でEXLATCH0〜2へ信号が入力された場合のみ、乱数ラッチデータレジスタに乱数値がラッチされる。乱数ラッチデータレジスタにラッチデータがある状態であるときは、EXLATCH0〜2へ信号が入力されて乱数ラッチデータレジスタが更新されずそれまでのラッチデータが保持される。RDEXLMに1(更新)を設定すると、EXLATCH0〜2へ信号が入力される都度、ラッチデータは更新される。
Holding or updating of the latch data register can be set by an external latch signal mode register (RDEXLM). When RDEXLM is set to 0 (hold), a random number value is latched in the random number latch data register only when a signal is input to EXLATCH0 to EXLATCH2 with the random number latch data register cleared. When there is latch data in the random number latch data register, a signal is input to EXLATCH0 to
[定期リセットモニタレジスタ]
次に、図24で示した内部機能レジスタにおける定期リセットモニタレジスタについて図38を用いて説明する。定期リセットモニタでは定期リセットタイマ用カウンタの値を読み出すことができる。
[Periodic reset monitor register]
Next, the periodic reset monitor register in the internal function register shown in FIG. 24 will be described with reference to FIG. The periodical reset monitor can read the value of the periodical reset timer counter.
図38に示すように、定期リセットモニタレジスタでは、メモリ空間アドレス1094h(I/O空間アドレス94h)のビット7〜0にシンボルITRMNが対応付けされている。ITRMNでは、定期リセットモニタの設定が行われる。そして、00h〜FFhのいずれかに設定される。また、なお、R/WはRになり、初期値は0になっている。
As shown in FIG. 38, in the periodic reset monitor register, the symbol ITRMN is associated with
定期リセットは、HWパラメータの定期リセット設定(HPRST)により動作する。定期リセット用カウンタは、システムリセット又はWDTリセットにより00hに初期化され、定期リセット用クロックによりアップカウントされる。定期リセットモニタレジスタ(ITRMN)から定期リセット用カウンタ値を読み出すことができる。 The periodic reset operates according to a periodic reset setting (HPRST) of the HW parameter. The periodic reset counter is initialized to 00h by a system reset or a WDT reset, and is counted up by a periodic reset clock. The periodic reset counter value can be read from the periodic reset monitor register (ITRMN).
[レジスタ構成について]
次にレジスタ構成について説明する。
[Register configuration]
Next, the register configuration will be described.
[汎用レジスタについて]
図39に示すように、レジスタバンクとして、バンク0とバンク1からなる2つのレジスタバンクを備えている。各レジスタバンクには、8つの8ビット汎用レジスタW,A,B,C,D,E,H,L及び2つの16ビット汎用レジスタIX,IYを備えている。W,A,B,C,D,E,H,Lは8ビットの転送や演算などに用いられる。また、これらのレジスタを結合してWA,BC,DE,HLとして用いることもできる。WA,BC,DE,HL,IX,IYは、16ビットの転送や演算になどに用いることができる。汎用レジスタは、システムリセット、WDTリセット、定期リセット、イリーガルアクセスリセット時00h又は0000hに初期化される。
[General-purpose registers]
As shown in FIG. 39, two register banks,
[プログラムステータスワード(PSW)]
次に図39で示すPSWについて図40を用いて説明する。PSWは、命令の演算結果や実行結果の状態を保持するレジスタであり、8種類のフラグで構成されている。PSWは、前述したCPUコアとの初期化にともない、システムリセット、WDTリセット、定期リセット、イリーガルアクセスリセット時に00hにクリアされる。
[Program status word (PSW)]
Next, the PSW shown in FIG. 39 will be described with reference to FIG. The PSW is a register that holds the state of the operation result and the execution result of the instruction, and is composed of eight types of flags. The PSW is cleared to 00h at the time of a system reset, a WDT reset, a periodic reset, and an illegal access reset due to the initialization with the CPU core described above.
図40に示すように、PSWでは、ビット7にシンボルJF(ジャンプステータスフラグ)が対応付けされている。JFは、1バイト長のJRS命令などで使用するフラグである。図中の例で示すように、命令により、ゼロフラグがセットされる場合とキャリーフラグがセットされる場合とがある。また、図中の例で示すように、INC、DEC命令の場合にはキャリーフラグは変化しないが、キャリーフラグがセットされる条件でジャンプステータスフラグがセットされる。
As shown in FIG. 40, in the PSW, a symbol JF (jump status flag) is associated with
また、ビット6にZF(ゼロフラグ)が対応付けされている。ZFは、演算結果又は転送データが00h(8ビットの場合)又は0000h(16ビットの場合)で1にセットされ、その他の場合は0にクリアされる。交換命令(XCH dst,src)では、dstに格納される値が0のときにセットされる。
また、ビット5にCF(キャリーフラグ)が対応付けされている。CFは、演算時のキャリー又はボローがセットされる。除算命令の場合は、0除算又は除算結果が0100h以上の場合に1がセットされる。INC,DEC命令の場合は、キャリーまたはボローが生じる場合でもキャリーフラグは変化せず値を保持する。
Further, a CF (carry flag) is associated with
また、ビット4にHF(ハーフキャリーフラグ)が対応付けされている。HFは、8ビット演算時に4ビット目へのキャリー又はボローがセットされる。
Further, HF (half carry flag) is associated with
また、ビット3にSF(サインフラグ)が対応付けされている。SFは、演算結果のMBSが1のときに1にセットされ、それ以外の場合0にクリアされる。
In addition, SF (sign flag) is associated with
また、ビット2にVF(オーバーフローフラグ)が対応付けされている。VFは、演算結果にオーバーフローが生じたときに1にセットされ、それ以外のときに0にクリアされる。
Further, VF (overflow flag) is associated with
また、ビット1にRBS(レジスタバンクセレクタ)が対応付けされている。RBSは、汎用レジスタで選択されているバンクを示している。
Further, RBS (register bank selector) is associated with
また、ビット0にIMF(割込マスタ許可フラグ)が対応付けされている。IMFは、DI命令でIMF=0となり、マスカブル割込の受付が禁止される。EI命令でIMF=1となり、マスカブル割込の受付が許可される。
Also,
[スタックポインタ(SP)]
次に、図39で示すSPについて図41を用いて説明する。SPはスタックの先頭番地を示す16ビットのレジスタである。
[Stack pointer (SP)]
Next, the SP shown in FIG. 39 will be described with reference to FIG. SP is a 16-bit register indicating the top address of the stack.
図41に示すように、PUSH命令時、サブルーチンコール時、割込受付時にポストデクリメントされ、POP命令時、リターン命令時にプリインクリメントされる。サブルーチンコール時(CALL命令、CALLV命令)は戻り番地の上位、下位の順にPUSHされる。割込受付時はプログラムステータスワード、戻り番地上位、下位の順にPUSHされる。SPは、システムリセット、WDTリセット、定期リセット、イリーガルアクセスリセット時01FFhに初期化される。 As shown in FIG. 41, it is post-decremented at the time of a PUSH instruction, at the time of a subroutine call, or at the time of receiving an interrupt, and is pre-incremented at the time of a POP instruction or a return instruction. At the time of a subroutine call (CALL instruction, CALLV instruction), PUSH is performed in the order of higher and lower return addresses. At the time of accepting an interrupt, a PUSH is performed in the order of a program status word, a return address higher, and a lower address. The SP is initialized at 01FFh at system reset, WDT reset, periodic reset, and illegal access reset.
[プログラムカウンタ(PC)]
次に、図39で示すPCについて説明する。次に実行すべき命令が格納されているアドレスを示す16ビットのレジスタである。システムリセット、WDTリセット、定期リセット、イリーガルアクセスリセットで8000hに初期化され、システムリセット、WDTリセット、定期リセット、イリーガルアクセスリセット解除後は8000h番地からプログラムの実行を開始する。
[Program counter (PC)]
Next, the PC shown in FIG. 39 will be described. This is a 16-bit register indicating the address where the instruction to be executed next is stored. The system is initialized to 8000h by a system reset, a WDT reset, a periodic reset, and an illegal access reset. After the system reset, the WDT reset, the periodic reset, and the illegal access reset are released, the program execution is started from the
[マイクロコンピュータの起動時の動作の概要]
上記のように構成されたマイクロコンピュータでは、電力が供給され、リセット回路49、リセット回路95からリセット信号が入力されると、システムリセットを行う。
[Overview of operation at startup of microcomputer]
In the microcomputer configured as described above, when power is supplied and reset signals are input from the
このシステムリセットにより、マイクロコンピュータの各機能がリセット要因による動作の変化(図23参照)として説明した動作を行う。例えば、CPUコアの初期化が行われ、それに伴いPSWが00hにクリアされる。従って、IMFが0となり、割込禁止状態が設定される。また、初期化要因にシステムリセットが定められている内部機能レジスタ(CTCコントロールレジスタや乱数回路に関わるレジスタなど)に初期値が設定される(図24参照)。 By this system reset, each function of the microcomputer performs the operation described as the change in the operation due to the reset factor (see FIG. 23). For example, the initialization of the CPU core is performed, and accordingly, the PSW is cleared to 00h. Therefore, the IMF becomes 0 and the interrupt prohibition state is set. In addition, an initial value is set in an internal function register (CTC control register, register relating to a random number circuit, etc.) for which system reset is determined as an initialization factor (see FIG. 24).
さらに、HWパラメータを参照して各種機能の設定を行う(図14参照)。ここで、HWパラメータにおいて、マイクロコンピュータが起動しない条件(図22参照)が満たされるか否かを判定し、満たされている場合にはマイクロコンピュータは起動しない。 Further, various functions are set with reference to the HW parameters (see FIG. 14). Here, in the HW parameter, it is determined whether or not a condition that the microcomputer does not start (see FIG. 22) is satisfied. If the condition is satisfied, the microcomputer does not start.
その後、設定されたシステムリセット時間が経過した後に、ユーザプログラム(図12における「プログラム/データ」に格納されているプログラム)に従って図5及び図6に示す初期設定処理を実行する。 Thereafter, after the set system reset time has elapsed, the initialization processing shown in FIGS. 5 and 6 is executed according to the user program (the program stored in “Program / Data” in FIG. 12).
[変形例]
上記実施形態では、電断処理を図8及び図9に示すタイマ割込み処理(メイン)内で実行したが、NMI割込(マスク不能割込)によって電断処理を実行してもよい。
[Modification]
In the above embodiment, the power interruption process is executed in the timer interrupt process (main) shown in FIGS. 8 and 9; however, the power interruption process may be executed by an NMI interrupt (non-maskable interrupt).
この場合には、割込要求信号が入力されると割込許可/禁止の状態にかかわらずNMI割込を発生させて電断処理を実行する。電断処理において、まず、電源断時直前の割込許可/禁止状態をバックアップして割込禁止に設定する。次いで、図10に示す電断処理(メイン)と同様の処理を実行する。そして、マイクロコンピュータを起動して、初期設定処理を実行したときに、図6のSa17の処理を行わず、電源断時の割込許可/禁止状態にもとづいて、割込許可/禁止状態を復帰させる。 In this case, when the interrupt request signal is input, an NMI interrupt is generated and the power interruption process is executed regardless of the interrupt permission / prohibition state. In the power interruption processing, first, the interruption permission / inhibition state immediately before the power interruption is backed up and set to the interruption inhibition. Next, a process similar to the power interruption process (main) shown in FIG. 10 is executed. Then, when the microcomputer is started up and the initial setting process is executed, the process of Sa17 in FIG. 6 is not performed, and the interruption permission / prohibition state is restored based on the interruption permission / prohibition state when the power is turned off. Let it.
そして、このように電断処理を実行する場合において、図13に示すベクタテーブルに設定した値が0000h、8000h〜HPRGEND以外の値の場合は図22に示す起動しない条件を満たす場合にはマイクロコンピュータの起動を制限する。すなわち、ベクタテーブルのアドレスA7A0h〜A7A1hにおけるINT/NMIの値が0000h、8000h〜HPRGEND以外の値の場合は図22に示す起動しない条件を満たす場合にはマイクロコンピュータの起動を制限する。これにより、意図しないマスク不能割込処理が行われることを防止できる。 In the case where the power interruption process is performed as described above, if the value set in the vector table shown in FIG. 13 is a value other than 0000h, 8000h to HPRGEND, and if the condition for not starting shown in FIG. Restrict launching. That is, when the value of INT / NMI at the addresses A7A0h to A7A1h in the vector table is a value other than 0000h and 8000h to HPRGEND, the activation of the microcomputer is restricted if the condition of not starting shown in FIG. 22 is satisfied. As a result, it is possible to prevent unintended non-maskable interrupt processing from being performed.
また、本変形例において、NMI割込の割込要求信号が入力されてからNMI割込が発生するまでの期間(例えば、3サイクル)は、タイマ割込処理(メイン)の発生条件が成立してからタイマ割込が発生するまでの期間(例えば、4サイクル)よりも短くなっている。このため、好適に電断処理を実行することができる。 Further, in this modification, during the period (for example, three cycles) from the input of the NMI interrupt request signal to the occurrence of the NMI interrupt, the condition for generating the timer interrupt process (main) is satisfied. It is shorter than the period (for example, 4 cycles) from when the timer interrupt occurs until the timer interrupt occurs. For this reason, the power interruption processing can be suitably performed.
なお、本変形例は、電断処理(メイン)および初期設定処理において実施する例を挙げたが、サブ制御部91が実行する電断処理(サブ)及び初期設定処理(サブ)において実施してもよい。
Note that, in the present modified example, an example in which the power interruption processing (main) and the initial setting processing are performed is described, but the power interruption processing (sub) and the initial setting processing (sub) performed by the
[上記実施形態の効果]
上記実施形態では、初期設定処理でタイマ割込の設定を行った後に割込許可し、ベクタテーブルに設定した値が0000h、8000h〜HPRGEND以外の値の場合にはマイクロコンピュータの起動を制限する(本例では、図5及び図6、図22に示す部分)。
よって、意図しない割込処理が実行されることを事前に防止することができる。
[Effects of the above embodiment]
In the above-described embodiment, the interrupt is permitted after the timer interrupt is set in the initial setting process, and when the value set in the vector table is a value other than 0000h, 8000h to HPRGEND, the activation of the microcomputer is limited ( In this example, the portions shown in FIGS. 5, 6, and 22).
Therefore, execution of unintended interrupt processing can be prevented in advance.
上記実施形態では、CTCがカウント動作中であってもTMCNT0〜2を設定すると、CTC0〜2とTMCNT0〜2の設定内容で更新され、カウント中のタイマ値はCTC0〜2の設定値から再度ダウンカウントする(本例では、図27及び図28に示す部分)。
よって、意図しない割込処理が実行されることを事前に防止することができる。
In the above embodiment, if TMCNT0 to TMCNT2 is set even while the CTC is counting, the settings of CTC0 to TMCNT2 and TMCNT0 to 2 are updated, and the timer value during counting is again reduced from the set value of CTC0 to CTC2. Counting (in this example, the portions shown in FIGS. 27 and 28).
Therefore, execution of unintended interrupt processing can be prevented in advance.
上記実施形態では、システムリセットが行われて割込コントローラが初期化されると、割込要求レジスタ、割込許可レジスタ、割込優先順位レジスタに初期値が設定される(本例では、図23及び図32に示す部分)。
よって、意図しない設定で割込処理が実行されることを事前に防止することができる。
In the above embodiment, when a system reset is performed and the interrupt controller is initialized, initial values are set in the interrupt request register, the interrupt permission register, and the interrupt priority register (in this example, FIG. 23). And the part shown in FIG. 32).
Therefore, it is possible to prevent in advance that the interrupt process is executed with an unintended setting.
上記実施形態では、プログラムエンドアドレスの機能を使用しているときにおいて、シンボルがHPRGENDであるときで、設定内容がプログラムエンドアドレスのときは、HPRGEND1〜A6FFhの領域へのアクセスがあったときにイリーガルアクセスリセットが発生する。(本例では、図21に示す部分)。
よって、不正なプログラムの実行を防止することができる。
In the above embodiment, when the function of the program end address is used, when the symbol is HPRGEND, and when the set content is the program end address, illegal access is made to the HPRGEN1 to A6FFh areas. An access reset occurs. (In this example, the part shown in FIG. 21).
Therefore, execution of an unauthorized program can be prevented.
上記実施形態では、初期設定処理において、タイマ割込の設定を行う前に割込禁止に設定する(本例では、図5のSa1の処理を行う部分)。
よって、意図しない割込処理が実行されることを事前に防止することができる。
In the above-described embodiment, in the initial setting process, the interrupt is set to be prohibited before the timer interrupt is set (in this example, the portion that performs the process of Sa1 in FIG. 5).
Therefore, execution of unintended interrupt processing can be prevented in advance.
上記実施形態では、乱数回路動作モード設定(関係するシンボル名:HRDMD)においてHEDMDのビット3=1の場合又はシステム設定(関係するシンボル名:HSYSCNT)においてHSYSCNTのビット5=1、HSYSCNTのビット6=1、HSYSCNTのビット7=1の場合にマイクロコンピュータの起動が制限される(本例では、図22に示す部分)。
よって、意図しない設定がなされることを事前に防止することができる。
In the above embodiment, in the random number circuit operation mode setting (related symbol name: HRDMD), when
Therefore, it is possible to prevent an unintended setting from being made in advance.
上記実施形態では、初期設定処理で乱数発生回路の設定を行った後に割込許可し、ベクタテーブルに設定した値が0000h、8000h〜HPRGEND以外の値の場合にはマイクロコンピュータの起動を制限する(本例では、図5及び図6、図22に示す部分)。
よって、意図しない割込処理が実行されることを事前に防止することができる。
In the above embodiment, the interrupt is permitted after setting the random number generation circuit in the initial setting process, and when the value set in the vector table is a value other than 0000h, 8000h to HPRGEND, the activation of the microcomputer is limited ( In this example, the portions shown in FIGS. 5, 6, and 22).
Therefore, execution of unintended interrupt processing can be prevented in advance.
上記実施形態では、RDEXLMに0(保持)を設定すると、乱数ラッチデータレジスタがクリアされた状態でEXLATCH0〜2へ信号が入力された場合のみ、乱数ラッチデータレジスタに乱数値がラッチされる。RDEXLMに1(更新)を設定すると、EXLATCH0〜2へ信号が入力される都度、ラッチデータは更新される(本例では、[乱数の動作]に示す部分)。
よって、意図しない乱数値を取り込むことを防止することができる。
In the above embodiment, when RDEXLM is set to 0 (hold), a random number value is latched in the random number latch data register only when a signal is input to EXLATCH0 to EXLATCH2 with the random number latch data register cleared. When 1 (update) is set to RDEXLM, the latch data is updated each time a signal is input to EXLATCH0 to EXLATCH (in this example, the portion indicated by [random number operation]).
Therefore, it is possible to prevent an unintended random number value from being captured.
上記実施形態では、システムリセットが行われて乱数回路が初期化されると乱数回路に関する各レジスタに初期値が設定される(本例では、図23に示す部分)。
よって、意図しない設定で乱数値となる数値データが更新されることを防止することができる。
In the above embodiment, when the system reset is performed to initialize the random number circuit, an initial value is set in each register related to the random number circuit (in this example, a portion shown in FIG. 23).
Therefore, it is possible to prevent the numerical data that is the random number value from being updated by an unintended setting.
上記実施形態では、初期設定処理中は割込禁止し、ベクタテーブルに設定した値が0000h、8000h〜HPRGEND以外の値の場合にはマイクロコンピュータの起動を制限する(本例では、図5及び図6、図22に示す部分)。
よって、意図しない割込処理が実行されることを事前に防止することができる。
In the above embodiment, interrupts are prohibited during the initial setting process, and when the value set in the vector table is a value other than 0000h, 8000h to HPRGEND, the activation of the microcomputer is restricted (in this example, FIGS. 6, the part shown in FIG. 22).
Therefore, execution of unintended interrupt processing can be prevented in advance.
上記実施形態では、初期化条件に応じて初期化1〜4のいずれかを選択して実行する(本例では、[初期化について]で示す部分)。
よって、意図しない割込処理が実行されることを事前に防止することができる。
In the above embodiment, one of the
Therefore, execution of unintended interrupt processing can be prevented in advance.
上記実施形態では、出力ポートを初期化する前に割込禁止に設定する(本例では、図10のSm3の前に割込禁止を実行する部分)。
よって、意図しないデータが出力されることを防止することができる。
In the above embodiment, the interrupt is set to be prohibited before the output port is initialized (in this example, the interrupt is prohibited before Sm3 in FIG. 10).
Therefore, output of unintended data can be prevented.
上記実施形態では、電断処理において電源断時の割込許可/禁止状態をバックアップするとともに初期設定処理で電源断時の割込許可/禁止状態を復帰させ、ベクタテーブルに設定した値が0000h、8000h〜HPRGEND以外の値の場合にはマイクロコンピュータの起動を制限する(本例では、[変形例]、図22に示す部分)。
よって、意図しない割込処理が実行されることを事前に防止することができる。
In the above-described embodiment, in the power interruption processing, the interrupt permission / inhibition state at the time of power interruption is backed up, and the interruption permission / prohibition state at the time of power interruption is restored by the initial setting processing. In the case of a value other than 8000h to HPRGEND, the activation of the microcomputer is restricted (in this example, [modification], the portion shown in FIG. 22).
Therefore, execution of unintended interrupt processing can be prevented in advance.
上記実施形態では、ベクタテーブルのアドレスA7A0h〜A7A1hにおけるINT/NMIの値が0000h、8000h〜HPRGEND以外の値の場合にはマイクロコンピュータの起動を制限する(本例では、[変形例]、図22に示す部分)。
よって、意図しない割込処理が実行されることを事前に防止することができる。
In the above embodiment, when the value of INT / NMI at addresses A7A0h to A7A1h of the vector table is a value other than 0000h and 8000h to HPRGEND, the activation of the microcomputer is restricted (in this example, [Modification], FIG. 22). Part shown).
Therefore, execution of unintended interrupt processing can be prevented in advance.
上記実施形態では、NMI割込信号が入力されてからNMI割込が発生するまでの期間は、タイマ割込処理(メイン)の発生条件が成立してからタイマ割込が発生するまでの期間よりも短い(本例では、[変形例]に示す部分)。
よって、電断処理を好適に実行することができる。
In the above embodiment, the period from the input of the NMI interrupt signal to the occurrence of the NMI interrupt is longer than the period from the time when the condition for generating the timer interrupt processing (main) is satisfied to the time when the timer interrupt is generated. Is also short (in this example, the portion shown in [Modification]).
Therefore, the power interruption processing can be suitably performed.
[その他、変形例]
上記実施形態では、メイン制御部41による初期設定処理、タイマ割込処理(メイン)、電断処理(メイン)に本発明を適用する例を挙げたが、サブ制御部91による初期設定処理(サブ)、タイマ割込処理(サブ)、電断処理(サブ)に本発明を適用してもよい。
[Other variations]
In the above embodiment, the example in which the present invention is applied to the initial setting process, the timer interrupt process (main), and the power interruption process (main) by the
[遊技機について] [About gaming machines]
以上のように、上記の実施の形態では、スロットマシンを例に挙げて説明したが、例えば遊技球を用いるパチンコ遊技機に上記の実施形態で示した構成を適用して、請求項に係る発明を実現することが可能である。 As described above, in the above embodiment, the slot machine has been described as an example. However, for example, the configuration shown in the above embodiment is applied to a pachinko game machine using a game ball, and the invention according to the claims Can be realized.
また、上記の実施の形態では、メダル並びにクレジットを用いて賭数を設定するスロットマシンを例に挙げて説明したが、これに限定されることなく、例えば、パチンコ遊技機で用いられている遊技球を用いて賭数を設定するスロットマシンや、クレジットのみを使用して賭数を設定する完全クレジット式のスロットマシンに上記の実施の形態で示した構成を適用して、請求項に係る発明を実現することが可能である。遊技球を遊技媒体として用いる場合は、例えば、メダル1枚分を遊技球5個分に対応させた場合に、上記の実施の形態で賭数として3を設定する場合は、15個の遊技球を用いて賭数を設定するものに相当する。 Further, in the above-described embodiment, the slot machine for setting the number of bets using medals and credits has been described as an example. However, the present invention is not limited to this. For example, gaming machines used in pachinko gaming machines Claims wherein the configuration shown in the above-described embodiment is applied to a slot machine for setting a bet amount using a ball or a fully credit type slot machine for setting a bet amount using only credits. Can be realized. When a game ball is used as a game medium, for example, when one medal corresponds to five game balls, and when the number of bets is set to 3 in the above-described embodiment, 15 game balls are used. Is used to set the number of bets.
また、本発明の遊技機は、メダル及び遊技球などの複数種類の遊技用価値のうちのいずれか1種類のみを用いるものに限定されるものでなく、例えばメダル及び遊技球などの複数種類の遊技用価値を併用できるものであってもよい。すなわち、メダル及び遊技球などの複数種類の遊技用価値のいずれを用いても賭数を設定してゲームを行うことが可能であり、かつ入賞の発生によってメダル及び遊技球などの複数種類の遊技用価値のいずれをも払い出し得る遊技機も本発明の遊技機に含まれるものである。 Further, the gaming machine of the present invention is not limited to one using only one of a plurality of types of gaming values such as medals and gaming balls. A game value may be used together. That is, it is possible to set a bet amount and play a game by using any of a plurality of types of gaming values such as medals and game balls, and to generate a plurality of types of games such as medals and game balls by winning. A gaming machine capable of paying out any of the utility values is also included in the gaming machine of the present invention.
1 スロットマシン
2L、2C、2R リール
6 MAXBETスイッチ
7 スタートスイッチ
8L、8C、8R ストップスイッチ
41 メイン制御部
41a CPU
41b ROM
41c RAM
91 サブ制御部
91a CPU
91b ROM
91c RAM
1
41b ROM
41c RAM
91 Sub-control unit 91a CPU
91b ROM
91c RAM
Claims (1)
プログラムを記憶する記憶手段と、
該記憶手段に記憶されたプログラムに従った処理を実行するマイクロコンピュータと、を備え、
プログラムは、割込の発生に応じて実行される割込プログラムを含み、
前記マイクロコンピュータは、
割込が許可されているときに、該割込にもとづいて割込プログラムに従った処理を実行する割込処理実行手段と、
割込の発生を制限する割込制限手段と、
前記記憶手段における割込プログラムのアドレスを記憶可能な記憶領域を有するアドレス記憶手段と、
前記アドレス記憶手段の記憶領域で記憶しているアドレスが所定の範囲にあるか否かを前記マイクロコンピュータの起動時に判定する判定手段と、
割込プログラムのアドレスが所定の範囲にないと前記判定手段が判定したときに前記マイクロコンピュータの起動を制限する起動制限手段とを備え、
前記割込制限手段は、前記記憶手段に記憶されたプログラムにもとづく初期設定処理が開始される前に割込の発生を制限する第1の割込制限手段と、前記記憶手段に記憶されたプログラムにもとづく初期設定処理の開始に際して割込の発生を制限する第2の割込制限手段と、を含む、遊技機。 In gaming machines that can play games,
Storage means for storing the program;
A microcomputer that executes processing according to a program stored in the storage means,
The program includes an interrupt program executed in response to the occurrence of the interrupt,
The microcomputer includes:
Interrupt processing executing means for executing processing according to an interrupt program based on the interrupt when the interrupt is permitted;
Interrupt limiting means for limiting the occurrence of interrupts;
Address storage means having a storage area capable of storing an address of an interrupt program in the storage means;
Determining means for determining whether or not the address stored in the storage area of the address storage means is within a predetermined range at the time of starting the microcomputer;
Start-up limiting means for limiting the start-up of the microcomputer when the determination means determines that the address of the interrupt program is not within a predetermined range,
The interrupt restricting means includes: first interrupt restricting means for restricting occurrence of an interrupt before an initialization process based on a program stored in the storage means is started; and a program stored in the storage means. A second interrupt restricting means for restricting the occurrence of an interrupt at the time of starting the initial setting process based on the game machine.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014251143A JP6628963B2 (en) | 2014-12-11 | 2014-12-11 | Gaming machine |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014251143A JP6628963B2 (en) | 2014-12-11 | 2014-12-11 | Gaming machine |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016112058A JP2016112058A (en) | 2016-06-23 |
JP6628963B2 true JP6628963B2 (en) | 2020-01-15 |
Family
ID=56139292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014251143A Active JP6628963B2 (en) | 2014-12-11 | 2014-12-11 | Gaming machine |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6628963B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6628961B2 (en) * | 2014-12-11 | 2020-01-15 | 株式会社三共 | Gaming machine |
JP6600456B2 (en) * | 2014-12-11 | 2019-10-30 | 株式会社三共 | Game machine |
JP6628962B2 (en) * | 2014-12-11 | 2020-01-15 | 株式会社三共 | Gaming machine |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6280733A (en) * | 1985-10-04 | 1987-04-14 | Nec Corp | Information processor |
JP3583339B2 (en) * | 2000-01-13 | 2004-11-04 | 株式会社三共 | Gaming machine |
JP4259012B2 (en) * | 2001-11-14 | 2009-04-30 | 株式会社三洋物産 | Game machine |
JP2004242717A (en) * | 2003-02-10 | 2004-09-02 | Sankyo Kk | Game machine |
JP2004344366A (en) * | 2003-05-22 | 2004-12-09 | Sanyo Product Co Ltd | Game machine |
JP2006158532A (en) * | 2004-12-03 | 2006-06-22 | Sankyo Kk | Slot machine using game balls |
JP2007029595A (en) * | 2005-07-29 | 2007-02-08 | Sansei R & D:Kk | Game machine |
JP4954748B2 (en) * | 2007-02-23 | 2012-06-20 | 株式会社藤商事 | Bullet ball machine |
JP5931342B2 (en) * | 2011-03-18 | 2016-06-08 | 株式会社三共 | Game machine |
JP5881114B2 (en) * | 2012-09-21 | 2016-03-09 | 株式会社三共 | Game machine |
JP2014155631A (en) * | 2013-02-18 | 2014-08-28 | Kyoraku Sangyo Co Ltd | Game machine |
JP6628961B2 (en) * | 2014-12-11 | 2020-01-15 | 株式会社三共 | Gaming machine |
JP6600456B2 (en) * | 2014-12-11 | 2019-10-30 | 株式会社三共 | Game machine |
JP6628962B2 (en) * | 2014-12-11 | 2020-01-15 | 株式会社三共 | Gaming machine |
-
2014
- 2014-12-11 JP JP2014251143A patent/JP6628963B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016112058A (en) | 2016-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6628962B2 (en) | Gaming machine | |
JP5996173B2 (en) | Game machine | |
JP6628961B2 (en) | Gaming machine | |
JP6061454B2 (en) | Game machine | |
JP6557084B2 (en) | Game machine | |
JP6748402B2 (en) | Slot machine | |
JP6571967B2 (en) | Game machine | |
JP2017099827A (en) | Slot machine | |
JP6628963B2 (en) | Gaming machine | |
JP2013172869A (en) | Slot machine | |
JP6611233B2 (en) | Game machine | |
JP6611232B2 (en) | Game machine | |
JP6611231B2 (en) | Game machine | |
JP6600456B2 (en) | Game machine | |
JP6652357B2 (en) | Gaming machine | |
JP6600465B2 (en) | Game machine | |
JP6600466B2 (en) | Game machine | |
JP6061961B2 (en) | Game machine | |
JP2008253527A (en) | Slot machine | |
JP2018007911A (en) | Game machine | |
JP6899021B2 (en) | Pachinko machine | |
JP6143418B2 (en) | Slot machine | |
JP6600464B2 (en) | Game machine | |
JP2008253528A (en) | Slot machine | |
JP6279008B2 (en) | Slot machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171101 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180824 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180918 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A132 Effective date: 20190423 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190617 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A132 Effective date: 20191001 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191121 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20191203 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191204 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6628963 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |