JP2010172589A - Game machine - Google Patents
Game machine Download PDFInfo
- Publication number
- JP2010172589A JP2010172589A JP2009020504A JP2009020504A JP2010172589A JP 2010172589 A JP2010172589 A JP 2010172589A JP 2009020504 A JP2009020504 A JP 2009020504A JP 2009020504 A JP2009020504 A JP 2009020504A JP 2010172589 A JP2010172589 A JP 2010172589A
- Authority
- JP
- Japan
- Prior art keywords
- input
- interrupt
- processing
- output
- game
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 217
- 238000012545 processing Methods 0.000 claims abstract description 142
- 239000000872 buffer Substances 0.000 claims abstract description 73
- 238000001514 detection method Methods 0.000 claims abstract description 63
- 238000004886 process control Methods 0.000 abstract 1
- 230000000694 effects Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000004321 preservation Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 239000011521 glass Substances 0.000 description 3
- 238000010304 firing Methods 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 239000012536 storage buffer Substances 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
Images
Landscapes
- Pinball Game Machines (AREA)
Abstract
Description
本発明は、遊技機の遊技制御、特に、遊技に係る制御内容が多様化、複雑化しても、通常の遊技状態に不都合を生じることなく遊技制御を行うことができる遊技機に関するものである。 The present invention relates to game control of a game machine, and more particularly to a game machine capable of performing game control without causing inconvenience in a normal game state even if control contents related to the game are diversified and complicated.
遊技に対する遊技者の興趣を高めるため、遊技機の遊技内容は、複雑化、多様化する傾向にある。これに伴い、遊技に関する制御の処理に多くの時間が必要になり、予め定められた所定時間ごとに一連の制御が繰り返される遊技制御方式の遊技機では、一連の制御を全て実行し終わる前に所定時間が経過して次回の一連の制御が開始されてしまうという不具合も発生する。この場合、実行されなかった制御の内容によっては、遊技者が不利益をこうむる問題が発生する。 In order to enhance the player's interest in games, the game contents of gaming machines tend to be complicated and diversified. Along with this, a lot of time is required for the game-related control processing, and in a game-control-type gaming machine in which a series of control is repeated at predetermined time intervals, before all the series of controls are executed, There also occurs a problem that the next series of control is started after a predetermined time has elapsed. In this case, depending on the contents of the control that has not been executed, there is a problem that the player suffers a disadvantage.
このような不具合を解消するために、例えば、下記の特許文献1には、メイン処理において初期化処理の完了後に一連の遊技制御処理を繰り返して実行すると共に、2msec毎に定期的にタイマ割込みがかかるように設定して、割込み処理では、外部からの入力信号の入力状態を監視し、入力状態の結果を入力情報として記憶する入力情報記憶処理を行い、メイン処理では、入力情報記憶処理によって記憶された入力情報を読み出して複製する入力情報設定処理と、入力情報設定処理によって複製された複製情報に基づき電気部品の制御処理を行うようにした構成の遊技機が開示されている(段落「0012」「0128」「0129」)。これにより一連の遊技制御処理が終了しないうちに割込処理が開始されて入力情報が更新されたとしても、遊技制御処理に未処理となる部分が残るのを防止することができ、一連の遊技制御処理が完了しないことによりもたらされる不都合を解消することができる(段落「0144」「0475」)。
In order to solve such a problem, for example, in
また、下記の特許文献2には、遊技に関する一連の処理を完了させるために、定期リセット信号の周期を長くする(4msec)と共に、この周期よりも短い分解能で処理が必要なSW入力処理等は定期リセットよりも短い周期のタイマ割込みで処理する構成の遊技機が開示されている。
In addition, in
しかしながら、遊技に係る制御は、近年、さらに複雑化、多様化してきており、遊技に関する一連の制御内容を処理し終えるまでに、より多くの時間を要する状況となっている。そこで、このような状況に対応するため、一般的には、メイン処理の周期を長くすることが考えられるが、該周期を4msecよりも長い周期に設定すると、通常遊技のタイマ分解能が粗くなり、アタッカの開放時間や、図柄の変動時間等の遊技状態に不都合が生じてくる。また、この状況に上記特許文献1あるいは特許文献2に開示された遊技機の技術で対応するには、複数回の割込み処理を実行してもメイン処理の実行が完結するように、各割込みの処理を短い時間で実行しなければならないが、いずれの引用文献の遊技機においても、割込みにおける処理負荷が大きく、割込み処理にある程度の時間を要するため、さらに複雑化、多様化していく遊技の制御に対応するのは困難であった。
However, control related to games has become more complicated and diversified in recent years, and it takes more time to complete a series of control contents related to games. Therefore, in order to cope with such a situation, it is generally considered that the period of the main process is lengthened. However, when the period is set to a period longer than 4 msec, the timer resolution of the normal game becomes coarse, There are inconveniences in the gaming state such as the time for opening the attacker and the time for changing the symbol. Further, in order to cope with this situation with the gaming machine technology disclosed in
そこで、本願発明はこのような事情に鑑みてなされたものであり、遊技内容がさらに複雑化、多様化された場合でも、遊技に関する制御を短い時間で処理し、予め定められた周期内に一連の遊技制御処理を完了することができる遊技機の提供を目的とするものである。 Therefore, the present invention has been made in view of such circumstances, and even when the game content is further complicated and diversified, the control related to the game is processed in a short time, and a series of processes are performed within a predetermined period. It is an object of the present invention to provide a gaming machine that can complete the game control process.
上記課題を解決するために、請求項1に係る遊技機の発明は、予め定められた複数回の割り込みが発生するごとに、一連の通常遊技を処理するメイン処理が実行開始される遊技機において、
前記複数回発生する割り込みの各処理で、各入力ポートの状態を、複数設けられている入力バッファのそれぞれ異なるバッファへ格納する処理を行い、前記メイン処理で、前記複数の入力バッファに格納された入力状態の変化に基づいて入力信号の有無を判定する入力検出処理を行う遊技制御手段を備えたことを特徴とするものである。
In order to solve the above-mentioned problem, the gaming machine invention according to
In each process of the interrupt generated multiple times, the state of each input port is stored in different buffers of the plurality of input buffers, and stored in the plurality of input buffers in the main process. It is characterized by comprising game control means for performing input detection processing for determining the presence or absence of an input signal based on a change in input state.
また、請求項2に係る遊技機の発明は、請求項1に記載の発明において、前記各割り込み処理では、割り込み回数のカウント処理、及び、前記入力ポートの状態を前記複数の入力バッファに時系列的に格納する処理が実行されることを特徴とするものである。
In addition, in the invention of the gaming machine according to
予め定められた複数回の割り込みを一単位とし、この一単位の割り込み回数毎に、別の割り込みが発生してその割り込みにおいてメイン処理が、主制御部(遊技制御手段)に設けられたCPUによって実行される。すなわち、一連の通常の遊技処理が実行されるメイン処理の期間内に、予め定められた複数回の割り込みが発生する。例えば、メイン処理を実行するための割り込み(上記別の割り込み)は、4msec毎に発生し、その間に発生する割り込み(上記予め定められた複数回の割り込み)は、1msec毎に発生するように設定することができる。このような設定の場合、少なくとも1msec以上の状態変化期間が入力ポートに発生すれば確実にその変化を判定することができる。 A plurality of predetermined interrupts are set as one unit, and for each interrupt count of one unit, another interrupt is generated, and the main process is performed by the CPU provided in the main control unit (game control means). Executed. That is, a predetermined number of interruptions are generated within a period of main processing in which a series of normal game processing is executed. For example, an interrupt for executing the main process (the above-mentioned another interrupt) is generated every 4 msec, and an interrupt generated during that period (the predetermined multiple interrupts) is set to be generated every 1 msec. can do. In such a setting, if a state change period of at least 1 msec or more occurs in the input port, the change can be reliably determined.
また、本発明では、従来、割り込み処理の中で行っていた入力ポートの状態変化検出処理(入力検出処理)を、メイン処理の中で行うようにした。このとき、入力ポートの状態は、割り込みが発生する毎に割り込み処理の中で入力バッファに格納しておく。入力バッファは、複数設けられており、各割り込み時における入力状態が、それぞれ異なる入力バッファに格納される。これにより入力バッファには、1回のメイン処理中に発生する複数回の割り込みのそれぞれの割り込み時入力状態がその複数回分だけ格納される。また、1回のメイン処理中において発生する割り込み回数のカウント処理は割り込み処理の中で行っておく。メイン処理において、上記入力バッファに格納された入力状態の変化、すなわち、時系列的に異なる入力バッファに格納された先の入力状態との比較により、入力信号の有無を判別する入力検出処理を行う。 In the present invention, the state change detection process (input detection process) of the input port, which has been conventionally performed in the interrupt process, is performed in the main process. At this time, the state of the input port is stored in the input buffer during interrupt processing every time an interrupt occurs. A plurality of input buffers are provided, and input states at the time of each interrupt are stored in different input buffers. As a result, the input state at the time of each of a plurality of interrupts generated during one main process is stored in the input buffer for the plurality of times. In addition, a count process of the number of interrupts that occurs during one main process is performed in the interrupt process. In the main processing, input detection processing is performed to determine the presence or absence of an input signal by comparing the input state stored in the input buffer, that is, by comparing with the previous input state stored in the input buffer that is different in time series. .
この構成により、割り込み処理の負荷が軽減されるのでその処理の時間を短くずることができ、また、割り込みの度に割り込み処理の中で行っていた入力検出処理を、入力バッファに格納しておいた複数回分のデータに基づいて、メイン処理の中で一回の入力検出処理において処理できるので処理時間を短くし、より多様化、複雑化する遊技制御を、遊技状態に不都合を発生させることなく処理することができ、さらにはメイン処理の周期をより短く設定することも可能となる。 With this configuration, the load of interrupt processing is reduced, so that the processing time can be shortened, and the input detection processing that was performed in the interrupt processing for each interrupt is stored in the input buffer. Based on the data of multiple times, it can be processed in one input detection process in the main process, so the processing time is shortened and more diversified and complicated game control without causing inconvenience in the game state It is possible to perform processing, and it is also possible to set the cycle of the main processing to be shorter.
また、請求項3に係る遊技機の発明は、請求項1または2に記載の発明において、前記メイン処理では、前記入力検出処理、及び該入力検出処理結果に基づく乱数の更新と取得の処理が実行されていることを特徴とするものである。
The invention of the gaming machine according to
始動入賞口に設けられた検出スイッチが入力ポートに接続されている場合、始動入賞口へ遊技球が入賞し、その入賞が検出スイッチによって検出されると、図柄の変動表示が開始されると共に、図柄に関する乱数の更新および乱数の取得が実行処理される。これら乱数の更新、取得にはある程度の処理時間を必要とするため、割り込み処理が短い間隔で発生すると、一方では、入力状態の変化を確実に検出することができる利点を有するが、その他方では、割り込みの度にその割り込み処理の中で入力検出処理およびそれに伴う乱数の更新、取得を実行していると、割り込み処理の負荷が重くなると共に、その全体の処理時間が長くなり、メイン処理の周期を長く設定しなければならないという不具合が生じる。また、スイッチの検出タイミングと乱数の更新、取得タイミングが同じ周期で行われない場合、乱数の出現に一様性はあっても、取得する乱数の一様性が担保されるか不明であり、遊技の公正を害する虞があり遊技機には不向きとなる(このため、許認可上も、当選用の乱数はスイッチの検出タイミングと乱数の更新、取得タイミングを同じ周期で行なうよう定められている)。よって、スイッチの検出タイミングと乱数の更新、取得タイミングを同じ周期で行ない、スイッチの状態変化を検出した場合には、その検出結果に基づいて乱数の更新、取得の処理を行わなければならない。そこで、本発明では、割込み時に、スイッチのオン・オフ変化の判別(スイッチの検出)は行わず、入力ポートに接続されたスイッチの状態(「1」or「0」)の保存までを行い、スイッチの入力検出は、割込み毎にそれぞれバッファに格納した複数回分の入力状態の値に基づきメイン処理内で1回でまとめて行うようにしている。そして、このスイッチ入力検出の周期に合わせて、乱数の更新および取得処理もメイン処理内において実行するようにした。これにより、割込み処理の負荷を軽減することができると共に、両者の実施タイミングを一致させることができ、また、乱数の更新、取得処理の発生回数を抑制し、全体としての(メイン処理と割込み処理)処理時間を短くすることができる。 When the detection switch provided at the start winning opening is connected to the input port, when the game ball wins the starting winning opening and the winning is detected by the detection switch, the variation display of the symbol is started, Update of random numbers and acquisition of random numbers related to symbols are executed. Update and acquisition of these random numbers require a certain amount of processing time, so if interrupt processing occurs at short intervals, on the other hand, it has the advantage of reliably detecting changes in the input state. When the input detection process and the accompanying random number update / acquisition are executed in the interrupt process for each interrupt, the load on the interrupt process increases and the overall processing time increases. There is a problem that the cycle must be set longer. In addition, if the switch detection timing and random number update and acquisition timing are not performed in the same cycle, it is unknown whether the uniformity of random numbers to be acquired is ensured even if the random number appears evenly. There is a risk of harming the fairness of the game, making it unsuitable for gaming machines (for this reason, the random number for winning is determined to be the same as the detection timing of the switch, the update of the random number, and the acquisition timing in the same license) . Therefore, when the switch detection timing and the random number update / acquisition timing are performed in the same cycle and a switch state change is detected, the random number update / acquisition processing must be performed based on the detection result. Therefore, in the present invention, at the time of interruption, the switch ON / OFF change determination (switch detection) is not performed, but the state of the switch connected to the input port ("1" or "0") is stored, Switch input detection is performed once in the main process based on the input state values stored in the buffer for each interrupt. In accordance with the switch input detection cycle, the random number update and acquisition processing is also executed in the main processing. As a result, it is possible to reduce the load of interrupt processing, match the execution timing of both, and suppress the number of occurrences of random number update and acquisition processing as a whole (main processing and interrupt processing ) Processing time can be shortened.
また、請求項4に係る遊技機の発明は、請求項3に記載の発明において、前記各割り込み処理では、該割り込み周期で制御が必要な出力処理が実行され、出力ポートに出力データが出力されていることを特徴とするものである。
Further, in the invention of the gaming machine according to claim 4, in the invention according to
また、請求項5に係る遊技機の発明は、請求項4に記載の発明において、前記割り込み周期で制御が必要な出力処理は、ステッピングモータ制御の出力処理であることを特徴とするものである。
Further, the invention of the gaming machine according to
本発明に係る遊技機によれば、周期的に発生する割込みの処理負荷を軽減することで割込み処理に掛かる時間を短くすることができ、さらに各割込み処理において実行していた所定の処理を、複数回の割込みが発生する毎にメイン処理中においてまとめて一回の処理で実行するようにしたので処理に掛かる時間を短くすることができ、予め定められた周期内に一連の遊技制御処理を確実に完了することができる。 According to the gaming machine according to the present invention, it is possible to reduce the time required for interrupt processing by reducing the processing load of interrupts that occur periodically, and further, the predetermined processing executed in each interrupt processing, Since every time an interrupt occurs more than once, it is executed in a single process at a time during the main process, so the time required for the process can be shortened and a series of game control processes can be performed within a predetermined period. Can be completed reliably.
以下、本発明に係る遊技機の実施の形態を添付図面に基づいて説明する。本実施の形態ではパチンコ機を例にして説明する。なお、各図面間において、同一符号は、同一又は相当部分を示す。 Embodiments of a gaming machine according to the present invention will be described below with reference to the accompanying drawings. In this embodiment, a pachinko machine will be described as an example. In the drawings, the same reference numerals indicate the same or corresponding parts.
図1は、パチンコ機1の正面図であり、説明に必要な部分を模式的に示した図である。パチンコ機1は、額縁状に形成されたガラス扉枠2を有し、ガラス扉枠2の背面側には、遊技盤3が着脱可能に取り付けられ、遊技盤3の前面には遊技領域5が設けられている。ガラス扉枠2の下側表面には打球供給皿6が設けられ、打球供給皿6の下側には、遊技球を前記遊技領域5へ発射させるハンドル7が設けられている。遊技領域5の略中央部には、複数種類の図柄を可変表示するための特別図柄表示装置8が設けられており、特別図柄表示装置8には、例えば、「左」、「中」、「右」の3つの変動図柄表示部が設けられている。特別図柄表示装置8の上部には、始動入賞口9に入った入賞球数を表示する4個のランプを有する始動保留記憶表示器10が設けられている。始動保留記憶表示器10は、始動入賞がある毎に4個を上限としてランプ点灯数を1つずつ増加させ、特別図柄表示装置8の可変表示が開始される毎にランプ点灯数を1つ減少させる。
FIG. 1 is a front view of the
特別図柄表示装置8の下側には始動入賞口9が設けられている。始動入賞口9は、始動口開閉装置21を備えており、所定条件に基づいて該装置21が動作し、始動入賞口9が開閉される。始動入賞口9の両側には、普通図柄作動ゲート11が設けられており、また、始動入賞口9の下側には大入賞口開閉装置12が設けられている。該大入賞口開閉装置12は、特定遊技状態(大当り状態)において開状態となり、大入賞口13に遊技球が入賞可能な状態となる。大入賞口13の下側には、7セグメントLEDで構成された普通図柄表示装置14が設けられている。その他、遊技領域5には、複数の一般入賞口15、16が設けられている。遊技領域5の最下部には、入賞しなかった遊技球を吸収するアウト口17が設けられている。また、遊技領域5の左右周辺には、遊技中に点灯・点滅表示される遊技盤表示灯18が設けられ、遊技領域5の外側の上部には、効果音を発するスピーカ19が設けられている。また、遊技領域5の外周部には本体表示灯20が設けられている。
A start winning opening 9 is provided below the special
発射装置から打ち出された遊技球は、打球誘導レールを通って遊技領域5に達し、その後、遊技領域5を流下する。遊技球が普通図柄作動ゲート11を通過すると、普通図柄表示装置14に普通図柄(例えば、表示数字)の連続的な変化が開始される。該変化は所定時間後に停止し、停止表示された普通図柄が予め定められた特定の図柄の場合には、始動口開閉装置21が所定時間だけ開状態となり、始動入賞口9へ遊技球が入賞し易くなる。また、遊技球が始動入賞口9に入賞すると、特別図柄表示装置8の変動図柄表示部に特別図柄(例えば、数字、絵柄、ストーリー性のある動画像等)の変動表示が開始される。該特別図柄表示装置8の変動表示は、予め定められた一定時間が経過したときに停止し、停止時の特別図柄の組み合わせが大当り図柄の組み合わせの場合、大当り遊技状態に移行する。大当たり遊技が開始されると、大入賞口13が、予め定められた一定時間経過するまで、または、大入賞口13に所定個数(例えば10個)の遊技球が入賞するまで継続して開放する。この開放の後、大入賞口13は、一旦、閉鎖状態となった後(インターバル期間経過後)、再度、上記の条件を満たすまで開放する。このような開閉期間を1ラウンドとし、このラウンドは、予め定められたラウンド数だけ繰り返される。
The game ball launched from the launching device reaches the
次に、図2のブロック図に基づいて、パチンコ機1の遊技の制御内容について説明する。
パチンコ機1には遊技球を検出するための各種スイッチが設けられており、該各種スイッチは、入力ポートを介して制御部に接続されている。特別図柄始動SW(スイッチ)31は、始動入賞口9に入賞した遊技球を検出するスイッチである。普通図柄始動スイッチ32は、普通図柄作動ゲート11を通過する遊技球を検出するスイッチである。カウントスイッチ33は、大入賞口13に入賞した遊技球を検出するスイッチである。一般スイッチ16は、一般入賞口15、16に入賞した遊技球を検出するスイッチである。これら各種スイッチによる検出信号は、I/Oポート41の入力ポートを介して主制御部40に入力される。
Next, based on the block diagram of FIG. 2, the control content of the game of the
The
払出計数スイッチ35は、払出装置55から払い出される賞球数を検出するスイッチである。払出通路玉切スイッチ36は、球貯留タンクから払出装置55間における払出通路内の遊技球の有無を検出するスイッチである。皿満タンスイッチ37は、打球供給皿6に貯留されている遊技球が満タンになったことを検出するスイッチである。これら各種スイッチによる検出信号は、図示を省略するが、払出制御部50に設けられたI/Oポートの入力ポートを介して払出制御部50に入力される。
The
また、ハンドル7は、発射制御部60に接続されており、ハンドル7が操作されるとその操作信号が、図示を省略する入力ポートを介して発射制御部60に入力される。
The
主制御部(遊技制御手段)40にはマイクロコンピュータが搭載されており、マイクロコンピュータは、遊技制御用プログラムや各種パラメータが記憶されているROM43、ワークメモリとして使用されるRAM42、遊技制御用プログラムに従って処理を実行するCPU44、及び、I/Oポート41で構成されている。I/Oポート41は、各スイッチ31、32、33、34、演出制御部70、払出制御部50(払出計数スイッチ35、払出通路玉切スイッチ36、皿満タンスイッチ37)等の外部装置に接続され、信号の入出力を制御する。
The main control unit (game control means) 40 is equipped with a microcomputer. The microcomputer follows a
主制御部40は、各スイッチ31、32、33、34から入力される信号を解析し、解析結果に基づいて、制御コマンドを大入賞口開閉装置12、始動口開閉装置21、及び、演出制御部70に出力送信する。また、主制御部40は、各種遊技状態を示す信号をホールコンピュータとの接続端子57に出力送信する。
The
CPU44は、汎用レジスタ、フラグレジスタ、インデックスレジスタ、スタックポインタ、割込みレジスタ、リフレッシュレジスタ、プログラムカウンタ、命令レジスタ、命令レコーダ、演算装置、制御装置等を備えている。各レジスタは、演算結果、次に読み込む命令のアドレス、実行状態等を保持する。RAM42には、遊技関連制御用変数使用領域とスタック領域とが設けられている。パチンコ機1に使用されるRAM42の記憶容量は、一般的には256バイト又は512バイトであり、遊技関連制御用変数使用領域には、各種スイッチから入力された信号の状態が記憶される「入力状態フラグn(n=1、2、・・・)」領域と、割込処理を実行した回数が記憶される「割込み回数カウンタ」領域が設けられている。スタック領域は、CPU44のワーキングエリアとして用いられ、割込み発生時や、サブルーチンや関数を呼び出す際に、処理中のデータや戻りアドレスなどを一時的に退避する。CPU44がROM43に記憶されている遊技制御用プログラムに従って遊技処理を実行することにより、主制御部40は遊技制御手段として機能する。
The
遊技制御手段は、電源投入時に起動されるメイン処理と、当該メイン処理の実行中に所定の周期(本実施の形態では1msec)で発生するタイマ割込みにより起動される割込処理の実行を制御する手段である。メイン処理では、処理時間の変動が大きい処理や、比較的処理時間が長い処理や、1msecという短い周期で実行する必要のない遊技制御処理が実行される。また、割込処理では、比較的短い周期で正確に行う必要のある処理が実行される。具体的には、スイッチの入力状態を保存する処理を挙げることができる。また、この他、割込処理で行う処理として、表示灯点灯パターンデータを出力ポートへセットする出力処理、コマンドデータを出力ポートへセットする出力処理、外部情報データを出力ポートへセットする出力処理、アクチェータ類データを出力ポートへセットする出力処理等を挙げることができる。メイン処理と割込処理の詳しい内容については後述する。 The game control means controls execution of a main process activated at power-on and an interrupt process activated by a timer interrupt generated at a predetermined cycle (1 msec in the present embodiment) during execution of the main process. Means. In the main process, a process with a large variation in processing time, a process with a relatively long processing time, or a game control process that does not need to be executed with a short cycle of 1 msec is executed. Further, in the interrupt process, a process that needs to be accurately performed in a relatively short cycle is executed. Specifically, a process for saving the input state of the switch can be exemplified. In addition, as processing to be performed in interrupt processing, output processing for setting indicator lighting pattern data to the output port, output processing for setting command data to the output port, output processing for setting external information data to the output port, An output process for setting the actuator data to the output port can be given. Detailed contents of the main process and the interrupt process will be described later.
パチンコ機1は、主制御部40をメイン制御部とするとサブ制御部として、払出制御部50、発射制御部60、演出制御部70、表示灯制御部71、音声制御部72、及び図柄制御部73を備えている。
When the
払出制御部50は、主制御部40から送信される払出制御コマンドに基づいて賞球の払出を制御する。払出制御部50は、主制御部40と同様、CPU(技制御手段)、ROM、RAM、及び、I/Oポートを備えており、払出制御部50のCPUがROMに記憶されている払出制御用プログラムに従って処理を実行することにより、払出制御部50は遊技制御手段として機能する。該遊技制御手段は、電源投入時に起動されるメイン処理と、該メイン処理の実行中に所定の周期で発生するタイマ割込みによって起動される割込処理との実行を制御する手段である。払出制御部50で実行される割込処理では、主制御部40からの払出制御コマンドを検出する処理が行われる。払出制御部50のタイマ割込みは、主制御部40と同様に1ms毎に発生する。
The
演出制御部70は、主制御部40からの制御コマンドに基づいて、表示灯制御部71、音声制御部72、及び、図柄制御部73を制御する。表示灯制御部71は、遊技盤3に設けられている始動保留記憶表示器10及び遊技盤表示灯18の表示制御を行うとともに、枠側に設けられている本体表示灯20の表示制御を行っている。音声制御部72は、スピーカ19の音声出力制御を行っている。図柄制御部73は、特別図柄表示装置8及び普通図柄表示装置14等の図柄表示部22の表示制御を行っている。発射制御部60は、駆動モータを駆動することにより発射装置61の発射制御を行っている。
The
次に、主制御部40が実行する制御内容について説明する。
[メインルーチン]
図3は、主制御部40のCPU44が実行するメイン処理を示すフローチャートである。パチンコ機1に対して電源が投入されると、CPU44は、ROM43に記憶された遊技制御プログラムに従い、RAM42をワークエリアとして用いてメイン処理を実行し、先ず、必要な初期設定処理を行う。ただし、図3に示すフローチャートでは、初期設定処理の内容は省略し、初期設定処理後に予め定められた周期毎(例えば、4msc毎)に繰り返されるルーチンでの処理内容のみを記載している。
Next, the control contents executed by the
[Main routine]
FIG. 3 is a flowchart showing main processing executed by the
CPU44は、ステップ110において、割込み禁止状態に設定した後、ステップ120において、電源の遮断が発生したか否かを検出する電源断発生チェック処理を実行する。続いて、ステップ130において、初期値更新乱数を生成するためのカウンタのカウント値を更新する初期値更新乱数更新処理を実行する。ここで、初期値更新乱数とは、所定周期毎に変更する大当り判定用乱数カウンタの初期値を決定するための乱数のことをいう。次に、ステップ140において、割込み許可状態に設定した後に、ステップ150において、その他乱数更新処理を実行する。その他乱数とは、リーチ抽選に用いる乱数、表示する図柄の種類を決定するための乱数等のことをいう。
After setting the interrupt disabled state in
ステップ110からステップ150までの処理は、割込み回数カウンタの値が4以上になるまで繰り返し実行される。なお、ステップ110における割込み禁止状態の設定は、CPU44が割込み禁止命令を発行したり、割込み禁止用のレジスタを禁止に設定したり、マスクレジスタをセットすることによって実現され、ステップ140における割込み許可状態の設定は、割込み許可命令を発行したり、割込み禁止用のレジスタを許可に設定したり、マスクレジスタをリセットすることによって実現される。
The processing from
ステップ160において、CPU44は、RAM42に記憶されている割込み回数カウンタの値をチェックし、値が4に達していない場合には、ステップ110に戻り、ステップ110からステップ150までの処理を繰り返す。一方、割込み回数カウンタの値が4以上である場合には、ステップ170で割込み回数カウンタをクリアし、ステップ180からステップ290において以下の制御処理を実行する。
In
ステップ180では、判定用乱数のカウンタのカウント値を更新する処理を行う。判定用乱数は、当たりを判定を行うための乱数である。次に、ステップ190では、表示用乱数のカウンタのカウント値を更新する処理を行う。表示用乱数は、特別図柄表示装置8あるいは普通図柄表示装置14に表示される図柄を決定する乱数である。さらに、ステップ200では、初期値用乱数のカウンタのカウント値を更新する処理を行う。初期値用乱数は、当たりを決定する乱数のカウンタの初期値を決定するための乱数である。
In
ステップ210では、入力ポートの状態変化に基づき各種スイッチの入力検出処理を行う。処理の詳しい内容については、後述する。続いて、ステップ220において、主制御部40に接続されている各制御基板の出力処理を行う。次に、ステップ230において、払い出した賞球数を管理する賞球払出管理処理を行う。次に、ステップ240において、発生した特別遊技についての情報を管理する特別遊技管理処理を行い、ステップ250において、普通遊技についての情報を管理する普通遊技管理処理を行う。次に、ステップ260において、モータ動作についての情報を管理するモータ管理処理を行う。次に、ステップ270において、ホールコンピュータ等の外部装置に送信すべき大当り情報、始動情報、確率変動情報等を生成する外部情報処理を行う。次に、ステップ280において、パチンコ機1を検査するための遊技機試験信号を出力する遊技機試験信号出力処理を行い、ステップ290において、外部装置に対する情報の出力管理処理を行う。
In
ステップ290の処理が終了すると、ステップ110に戻り、メイン処理における一周期の処理を繰り返す。従来の処理では、タイマ割込みを4msec毎に発生させていたので、初期値更新乱数更新処理やその他乱数更新処理を除く遊技制御処理、例えば、各スイッチの入力変化を検出する入力検出処理、判定用乱数更新処理、表示用乱数更新処理、初期値用乱数更新処理等は、割込み処理内で行っていた。しかし、本実施の形態においては、タイマ割込みの周期を1msecとしたので、この1msecという短い割込処理期間内にこれらの遊技制御処理を行うことは不可能となった。このため、割込処理を4回実行した後に、4msec毎に処理開始されるメイン処理内において、これらの各遊技制御処理(図3においてステップ180からステップ210までの処理)を実行するようにしている。
When the process of
[割込処理]
図4は、主制御部40のCPU44が実行する割込処理を示すフローチャートである。
本実施の形態では、CPU44の内蔵CTCが1msec毎に繰り返しタイマ割込みを発生するように設定されている。そして、タイマ割込みが発生すると、CPU44は割込処理を実行する。この割込処理では、CPU44は、ステップ310においてレジスタの退避処理を行った後、ステップ320において入力ポートに接続された各種スイッチの入力状態の保存処理を行う。
[Interrupt processing]
FIG. 4 is a flowchart showing an interrupt process executed by the
In the present embodiment, the built-in CTC of the
ここで、入力状態保存処理(ステップ320)の具体的処理内容を、図5に示すフローチャートに基づいて説明する。ステップ321において、I/Oポート41の入力ポートの値、すなわち接続されている各スイッチの入力状態を読み込む。そして、ステップ322において、その読み込んだ値を該当する入力状態保存用のバッファへ保存する。該当する入力状態保存用のバッファとは、予め入力状態保存用のバッファは複数設けられており、割込み毎に読み込まれる入力ポートの値がそれぞれ保存される予め定められた順番の異なるバッファのことを言う。入力状態保存処理では、入力ポートの状態をバッファに保存する処理のみを行い、その状態に基づく入力有無の判別は行っていない。この入力有無の判別処理は、メイン処理の入力検出処理の中で行っている。これにより、割込処理における処理負荷の軽減を図っている。
Here, the specific processing content of the input state storage processing (step 320) will be described based on the flowchart shown in FIG. In
さらに、図6、図7に基づいて、入力状態保存処理について詳しく説明する、図6は各スイッチ(SW1〜SW8)の状態チャートと入力状態保存値を示している。状態チャート上に表示された矢印(イ)〜(ヌ)は、タイマ割込みが発生するタイミング、すなわち入力ポートの読み込みタイミングを示している。そして、(イ’)〜(ヌ’)の値は、上記(イ)〜(ヌ)の入力ポート読み込みによる各スイッチの入力状態の保存値を「1」(High)と「0」(Low)によって示している。図7は複数個用意されているバッファ及びそれぞれのバッファに保存された入力状態保存値を示している。図7(a)に示される形態では、バッファ0〜バッファ4が設けられており、先に発生した割込みによって読み込まれた入力ポートの状態から順にバッファ0、バッファ1、バッファ2、バッファ3、バッファ4へと保存されていく。一方、保存された入力状態の値は、メイン処理の入力検出処理(図3のステップ210)で使用される際に、先に保存されたバッファ0からバッファ1、バッファ2、バッファ3、バッファ4の順に読み出される(図7(b)参照)。読み出し処理が終了したら、バッファ4に保存されていた入力状態の値がバッファ0に格納された後、次の割込み処理で読み込まれた入力ポートの状態から順にバッファ1、バッファ2、バッファ3、バッファ4へと保存されていく。
Further, the input state storage process will be described in detail with reference to FIGS. 6 and 7. FIG. 6 shows a state chart of each switch (SW1 to SW8) and an input state storage value. Arrows (A) to (N) displayed on the status chart indicate the timing when the timer interrupt occurs, that is, the input port reading timing. The values of (i ') to (nu') are the saved values of the input state of each switch by reading the input ports of (i) to (nu) above, "1" (High) and "0" (Low). Shown by. FIG. 7 shows a plurality of buffers prepared and input state storage values stored in the respective buffers. In the form shown in FIG. 7A, buffers 0 to 4 are provided.
入力状態保存処理でリード値を該当する入力状態バッファへ保存する処理(図5ステップ322)が終了すると、割込処理(図4)に戻って次のステップ330へ進む。ステップ330において、割込みカウンタの値を1加算し、次に、ステップ340において、レジスタの復帰処理を行った後に、ステップ350において、メイン処理に戻る。この実施の形態では、入力ポートに接続されたスイッチの入力状態の保存を1msec毎に行うために、タイマ割込みを1msec毎に発生させている。従来においては、スイッチの入力チェックは、例えば4msec毎に行われていたが、ゲージ構成やスイッチの位置によっては遊技球のスピードが早くなり、その場合には遊技球のスイッチ通過の検出信号が出力される時間間隔が4msec未満になることもあり、スイッチ通過検出を取りこぼす可能性があった。しかし、スイッチ検出を1msec毎に行うことにより、スイッチ通過検出の取りこぼしがなくなり、確実にスイッチを検出することができる。
When the process of storing the read value in the corresponding input state buffer in the input state storage process (step 322 in FIG. 5) is completed, the process returns to the interrupt process (FIG. 4) and proceeds to the
次に、上記のようにしてバッファに保存された入力ポートの状態に基づいて行われるメイン処理中の入力検出処理(図3のステップ210)について以下に詳しく説明する。図8は、入力検出処理の具体的処理内容を示すフローチャートである。
先ず、ステップ411において、スイッチONフラグをクリアする。次に、ステップ412において、割込処理で入力ポートの入力状態をバッファに格納した回数(図3に示すメイン処理の設定では5回(割込みカウンタの値が0〜4まで))を処理回数としてセットする。続いて、ステップ413において、読出しポインタ+0のバッファの値(図7に示すバッファ0に格納した入力状態の値)をロードする。ここでは、読み出しポインタ+0のバッファに格納された入力状態の値が「1010・・・・」(a)であったとする。なお、各入力ポートにはSW1〜SW8までのスイッチが接続されており、上記(a)の値は、上位ビット左からSW8、SW7、SW6、SW5、・・・の状態を表わし、その値が1、0、1、0、・・・であることを示している。
Next, the input detection process (step 210 in FIG. 3) in the main process performed based on the state of the input port stored in the buffer as described above will be described in detail below. FIG. 8 is a flowchart showing specific processing contents of the input detection processing.
First, in
続いて、ステップ414において、(a)の入力状態の値を反転させるために「1111・・・・(0FFH)」(b)とのXORとる。続いて、ステップ415において、上記XORした結果(「0101・・・・」(c))と、読み出しポインタ+1のバッファの値(図7に示すバッファ1に格納した入力状態の値)とのANDをとる。ここでは、読み出しポインタ+1のバッファに格納された入力状態の値が「1100・・・・」(d)であったとする。そして、ステップ416において、上記ANDした結果(「0100・・・・」(e))と、スイッチONフラグ(フラグバッファ)の値とのORをとり、その結果がスイッチONフラグにセットされる。この回のスイッチONフラグの値は、ステップ411で設定した「0000・・・・(000H)」の値であるため、新たにスイッチONフラグにセットされる値は、「0100・・・・」(e)の値である。以上の結果、入力状態が0から1へ変化したビットのみを保存することができ、スイッチONフラグにセットされた値が1であるビットに対応しているスイッチによって遊技球の検出があったと判別される。上記バッファ0とバッファ1に格納された入力状態の値からは、新たにスイッチONフラグにセットされた値が「0100・・・・」(e)であることから、6ビット目の入力に変化があった、すなわち、SW7による遊技球の検出があったと判別される。
Subsequently, in
このような処理を行うことにより、入力ポートの状態の変化を1回の処理で検出することができる。すなわち入力状態が0から1へ変化したビットの検出を8ビット分まとめて一回の処理で行うことができ、遊技球の検出を行ったスイッチを容易に認識することができる。ここで、図9に、入力状態の変化を検出するイメージ図を示す。入力状態保存用の各バッファには、割込処理によって1msec毎に取り込まれた入力ポートの状態(SW1〜SW8のオン・オフ状態)が保存されている。入力検出は、先に保存された入力状態(バッファnに保存された各ビットのデータ)「00000000」と次に保存された入力状態(バッファn+1に保存された各ビットのデータ)「00000001」とを比較して、入力状態が0から1へ変化しているか否かにより行う。図9では、SW1の状態が0から1へ変化しており、SW1によって入力の検出が行われたことを表わしている。そして、その入力検出の結果が、「off off off off off off off on」であることを示している。 By performing such processing, it is possible to detect a change in the state of the input port in one processing. That is, the detection of the bits whose input state has changed from 0 to 1 can be performed in a single process for 8 bits, and the switch that has detected the game ball can be easily recognized. FIG. 9 shows an image diagram for detecting a change in the input state. Each input state saving buffer stores the state of the input port (the ON / OFF state of SW1 to SW8) taken every 1 msec by the interrupt process. Input detection includes the previously stored input state (data of each bit stored in buffer n) “00000000” and the next stored input state (data of each bit stored in buffer n + 1) “00000001”. Are compared to determine whether the input state has changed from 0 to 1. In FIG. 9, the state of SW1 has changed from 0 to 1, indicating that the input has been detected by SW1. The result of the input detection indicates that “off off off off off off off on”.
図8に戻って、ステップ417において、読出しポインタが1加算され、続いて、ステップ418においてセットされた処理回数(ステップ412)の値が1減算される。減算された処理回数の値が0でなければステップ413に戻り、ステップ413〜ステップ418までの処理を繰り返す。次の回の処理では、読出しポインタが1加算されているため、図7に示されるバッファで言うと、バッファ1とバッファ2に格納された入力状態の値が演算処理され、遊技球のスイッチ検出の有無が判別される。同様にして、バッファ2とバッファ3、バッファ3とバッファ4に格納された入力状態の値が演算処理され、遊技球のスイッチ検出の有無が判別される。例えば、入力検出処理が開始される間に1msec毎に4回の割込み処理が発生する場合には、いずれかの割込み処理において各ビット毎に1回でもスイッチ検出があった(入力状態が0から1へ変化した)ときは、ステップ417でスイッチONフラグ(入力状態に0から1の変化があったビット)に1が保存される。
Returning to FIG. 8, in
図10に、割込処理内における入力状態保存処理とメイン処理における入力検出処理との関係を表わす。
割込み(矢印(ル)、(ヲ)、(ワ)、(カ))が発生すると、メイン処理の実行が中断され、割込処理において、入力ポートの入力状態(各スイッチSW1〜SW8の状態)がバッファに保存される。例えば、矢印(ル)で示す割込みでは、バッファに「00・・・・01」のデータが保存されている。割込処理のルーチンを抜ける際に割込カウンタのカウント値がカウントアップされるため(図4のステップ330参照)、割込処理終了後にメイン処理に戻ると割込カウンタの値は、1加算された値となる。例えば、図10において、矢印(ヲ)の割込みが発生した場合には、割込み処理での割込カウンタ値が1であったのに対して、メイン処理A1(レ)における割込カウンタの値は2にカウントアップされている。4回の割込み(矢印(ル)、(ヲ)、(ワ)、(カ))が発生し、割込カウンタの値が4に達すると、メイン処理において(図3のステップ160でYesに抜けて)入力検出処理(ステップ210)が実行される。図10において、矢印(カ)の割込みが発生すると、割込処理終了後に割込カウンタの値が4に達し、メイン処理A2(ツ)において入力検出処理が実行される。このとき、割込カウンタの値は、メイン処理A2内でクリアされて(図3のステップ170)0になる。入力検出処理では、割込処理毎にバッファへ保存した先後の各スイッチSW1〜SW8の状態を比較して、状態が0から1へ変化している場合にはスイッチのオン検出が発生したと判別する。図10に示すように、入力検出結果は「off on ・・・・ on off」になり、SW2とSW7によってオン検出が発生したと判別され、この結果がスイッチONフラグ(フラグバッファ)にセットされる。
FIG. 10 shows the relationship between the input state storage process in the interrupt process and the input detection process in the main process.
When an interrupt (arrow (le), (wo), (wa), (f)) occurs, the execution of the main processing is interrupted, and the input state of the input port (state of each switch SW1 to SW8) in the interrupt processing Is stored in the buffer. For example, in the interrupt indicated by the arrow (L), data “00... 01” is stored in the buffer. Since the count value of the interrupt counter is incremented when exiting the interrupt processing routine (see
割込処理が4回に達し、メイン処理(図3)のステップ160でYesに抜けた後、次の割込み(図10の矢印(ヨ))が発生する以前に入力検出処理(図3のステップ210)を実行し終えるようにプログラムの処理の順番(入力検出処理の順番)を設定しているので、各割込処理によって入力ポートの正確な入力状態取得を行うことができると共に、取得した入力状態のデータから正確かつ確実なスイッチ検出結果を得ることができる。
After the interrupt process reaches four times, the process returns to Yes in
図8に戻って、ステップ418で処理回数の値が0の場合には、ステップ419に進み、上記スイッチ検出の判別結果から、始動入賞口9への遊技球の入賞が検出されたと判別されたとき、当たり決定用乱数を取得し記憶する。さらに、ステップ420に進み、上記スイッチ検出の判別結果から、その他の乱数を取得し記憶する。以上の処理が終了すると、メイン処理(図3)の次の処理であるステップ220に進む。
入力ポートに接続されている各スイッチの状態をバッファに保存する処理のみを割込み時に実行し、各スイッチにオン・オフ変化が生じたか否かの判別は割込み時には実行しないようにすることによって、割込処理における処理負荷を軽減する。これにより、割込み処理に必要な処理時間が短くなり、メイン処理の実行時間を長く確保することができる。さらに、メイン処理期間(4msec)内に複数回(1msec毎)の割込みを発生させ、各割込み処理で保存した入力ポート状態の保存値の複数回分を基にして、メイン処理内において1回の入力検出処理で各スイッチにオン・オフ変化が生じたか否かの判別を行うようにしたので、割込み発生回数に対して入力検出処理の回数を少なくすることができ、メイン処理における処理負荷を軽減させることができる。また、短い周期で(1msec毎に)スイッチの状態を保存しているので、スイッチの状態変化(オン/オフ変化)を確実に判別することができる。
Returning to FIG. 8, if the value of the number of processing is 0 in
Only the process of saving the state of each switch connected to the input port in the buffer is executed at the time of interrupt, and the determination of whether each switch has changed on / off is not executed at the time of interrupt. Reduce the processing load in the embedded processing. As a result, the processing time required for the interrupt processing is shortened, and the execution time of the main processing can be secured long. Furthermore, an interrupt is generated multiple times (every 1 msec) within the main processing period (4 msec), and one input is performed in the main processing based on the stored values of the input port state stored in each interrupt processing. Since it is determined whether or not each switch has changed on / off during the detection process, the number of input detection processes can be reduced relative to the number of interrupt occurrences, reducing the processing load on the main process. be able to. In addition, since the switch state is stored in a short cycle (every 1 msec), the switch state change (on / off change) can be reliably determined.
また、スイッチの検出タイミングと乱数の取り込み(乱数の更新)タイミングとを一致させるために両処理を同じ周期で行なわなければならないという許認可上の要件があるところ、本発明では、割込み時に行っている処理内容は、スイッチのオン・オフ変化の判別(スイッチの検出)ではなく入力ポートに接続されたスイッチの状態(「1」or「0」)の保存であり、スイッチの検出はメイン処理内(図3の入力検出処理(ステップ210))で行っている。したがって、スイッチの検出と乱数の更新とはいずれもメイン処理において毎回行っており、両者の実施タイミングを一致させ上記要件を満たすことができる。例えば、1msec毎に発生する割り込みにおいて毎回、スイッチの検出を実施しようとすると、それに合わせて乱数の更新も1msecの周期で実施しなければならず、乱数の更新の処理に長い時間が必要となる。本発明では、上記のようにバッファに保存しておいた複数回分のスイッチ状態データに基づいてメイン処理の周期毎に1回のスイッチ検出を行なっているので、その周期に合わせて乱数の更新を行ない、乱数更新の発生回数を抑制しCPUの処理時間を短縮している。 In addition, in the present invention, there is an authorization requirement that both processes must be performed in the same cycle in order to match the switch detection timing and the random number fetch (random number update) timing. The processing content is not the determination of switch on / off change (switch detection) but the storage of the state of the switch connected to the input port ("1" or "0"). This is performed in the input detection process (step 210) in FIG. Therefore, both switch detection and random number update are performed each time in the main process, and the above requirements can be satisfied by matching the execution timings of both. For example, if it is attempted to detect a switch every time an interrupt occurs every 1 msec, the random number must be updated at a cycle of 1 msec accordingly, and a long time is required for the random number update process. . In the present invention, since the switch detection is performed once for each main processing cycle based on the switch state data stored in the buffer as described above, the random number is updated in accordance with the cycle. The number of occurrences of random number update is suppressed, and the CPU processing time is shortened.
次に、出力処理のうち短い分解能で出力制御が必要な出力処理(表示灯の出力処理、モータ駆動の出力処理等)を割込処理内で処理する形態について説明する。図11は、出力処理を割込処理内に追加したフローチャートである。 Next, a description will be given of a mode in which an output process (an output process of an indicator lamp, an output process of a motor drive, etc.) that requires output control with a short resolution is processed in the interrupt process. FIG. 11 is a flowchart in which the output process is added to the interrupt process.
[割込処理]
本形態の割込処理は、図4に示した割込処理と比較して、ステップ500の出力処理が追加されているだけの違いである。したがって、同じステップ番号の詳しい処理の説明については図4の説明を参照することとしここでは省略する。
CPU44は、ステップ310においてレジスタの退避処理を行った後、ステップ320において入力ポートに接続された各種スイッチの入力状態を該当する入力状態バッファへ保存する。続いて、ステップ500において、ステップ320でバッファに保存した入力状態に基づいて出力処理を行う。この出力処理では、メイン処理周期よりも短い分解能で出力制御が必要なもののみの処理を行ない、メイン処理周期の出力制御で十分なものの出力処理については、従来の処理と同様にメイン処理(図3)の出力管理処理(ステップ290)において実行する。具体的には、ステップ500の出力処理では、割込み毎(1msec毎)にバッファに保存した入力ポートの状態に基づいて、その割込み毎に各種出力データを選択し、その選択した出力データを出力ポートに出力している。
[Interrupt processing]
The interrupt process of this embodiment is different from the interrupt process shown in FIG. 4 only in that the output process of
After performing the register saving process in
ここで、割込処理毎に実行する出力処理の一例として、ステッピングモータの処理について図12に示すフローチャートに基づいて以下に説明する。
この形態では4相ステッピングモータを2相励磁で制御している。4相ステッピングモータは、4ビットを1単位として構成される4種類の出力パターンによって各相が制御されている。図13に4種類の出力パターン(ネ)〜(ム)とその出力パターンを選択するためのそれぞれ対応するカウンタ値を示す。ステッピングモータの回転速度は、出力パターンを切替える時間によって変化し、切り替え時間が短いほどモータの回転速度は高速になる。先ず、図12のステップ501において、1つの出力パターンあたりの滞在時間を1加算する。続いて、ステップ502において、1つの出力パターンあたりの滞在時間が出力パターンを切替える時間と一致しているか否か、すなわち現在設定されている出力パターンの出力時間が、予め定められた切替間隔の時間に達しているか否かを判別する。出力パターンを1msec毎に切替えるように設定している場合には、ステップ500の出力処理が開始される毎、すなわち各割込み毎にこの滞在時間と切替え時間とが一致する。また、出力パターンを2msec毎に切替えるように設定している場合には、割込みが2回発生する毎にこの滞在時間と切替え時間とが一致する。
Here, as an example of the output process executed for each interrupt process, the process of the stepping motor will be described based on the flowchart shown in FIG.
In this embodiment, the four-phase stepping motor is controlled by two-phase excitation. In the four-phase stepping motor, each phase is controlled by four types of output patterns configured with 4 bits as one unit. FIG. 13 shows four types of output patterns (ne) to (m) and corresponding counter values for selecting the output patterns. The rotation speed of the stepping motor changes depending on the time for switching the output pattern. The shorter the switching time, the higher the rotation speed of the motor. First, in
ステップ502において滞在時間と切替え時間とが一致すると判別された場合には、ステップ503に進み、1つの出力パターンあたりの滞在時間を0に設定した後、ステップ504に進み、出力パターン(ネ)〜(ム)を選択するカウンタを1加算する。なお、出力パターン及びそれに対応するカウンタ値は、図13に示すように4種類であるため、1加算した結果が4になった場合には、カウンタ値を0に設定する。続いて、ステップ505において、出力パターンを選択するカウンタに対応する出力パターンを選択し、ステップ506において、選択された出力パターンを出力ポート、すなわちステッピングモータへ出力する。一方、ステップ502において、両時間が一致しない場合には、ステップ505に進み、前回の割込みの出力処理で選択した出力パターンと同じ出力パターンを選択し、ステップ506において選択された出力パターンをステッピングモータへ出力する。出力後は、図11の割込処理に戻って次の処理(ステップ330)に進む。
If it is determined in
このように、割込処理において出力処理を実行することにより、割込み発生周期で出力パターンを切り換えることができ、モータを高速で回転させ、より正確なモータ制御を行うことができる。また、割込処理において出力処理を実行する場合でも、割込み毎に出力パターンを切替えるのではなく、割込カウンタが偶数のときのみ(あるいは奇数のときのみ)に切替えるように設定することで、例えば、割込み周期を1msecとすると、2msec毎に出力パターンの切り換えを行うことができモータの回転速度を調整することも可能である。 As described above, by executing the output process in the interrupt process, the output pattern can be switched at the interrupt generation cycle, the motor can be rotated at high speed, and more accurate motor control can be performed. Also, even when executing output processing in interrupt processing, instead of switching the output pattern for each interrupt, by setting to switch only when the interrupt counter is even (or only when odd), for example, If the interruption cycle is 1 msec, the output pattern can be switched every 2 msec, and the rotation speed of the motor can be adjusted.
出力処理(ステップ500)の終了後、図11のステップ330において、割込みカウンタの値を1加算し、次に、ステップ340において、レジスタの復帰処理を行った後に、ステップ350において、メイン処理に戻る。
After completion of the output process (step 500), 1 is added to the value of the interrupt counter in
この他、短い分解能で出力制御が必要な出力処理としては、表示灯(LED等)点灯パターンの出力制御、サブ制御基板へのコマンドデータの出力制御、ホール管理用コンピュータに出力される外部情報データ(大当たり情報、始動情報、確率変動情報等)の出力制御、アクチェータ類(ソレノイド、モータ等)の出力制御等が挙げられる。 In addition, output processing that requires output control with short resolution includes output control of indicator lamp (LED, etc.) lighting pattern, output control of command data to the sub control board, external information data output to the hall management computer Examples include output control of jackpot information, starting information, probability variation information, etc., output control of actuators (solenoid, motor, etc.), and the like.
例えば、表示灯(LED等)の点灯パターンの制御を出力処理(ステップ500)で実行した場合には、割込みが発生する毎(1msec毎)に点灯/消灯の切換えが可能となり、最短2msec周期の点滅表示が可能となる。さらに、例えば、割込み発生毎に切換えを行わずに、割り込みが発生する毎に加算される割込みカウンタの値に基づいて、割込みカウンタの値が偶数のときにのみ点灯パターンを出力ポートに出力することによって、上記の周期と比較して2倍の、4msec周期の点滅表示も可能となる。 For example, when the lighting pattern control of the indicator lamp (LED, etc.) is executed in the output process (step 500), it is possible to switch on / off every time an interrupt occurs (every 1 msec), with a minimum 2 msec cycle. Flashing display is possible. In addition, for example, without switching every occurrence of an interrupt, based on the value of the interrupt counter added each time an interrupt occurs, a lighting pattern is output to the output port only when the interrupt counter value is an even number. Thus, the blinking display with a period of 4 msec, which is twice as long as the above period, is also possible.
また、例えば、メイン処理の周期が4msecであって、従来のように、そのメイン処理周期毎(4msec毎)にモータのオン・オフを切り換えた場合には、10msecのオン期間を作成することはできなかったが、モータのオン・オフ制御を出力処理(ステップ500)で実行することにより、割込が発生する毎(1msec毎)にモータのオン・オフを切り換えることができ、10msecのオン期間を作成することが可能となり、従来の制御に比べてより分解能の細かなモータ制御が可能となる。
ただし、いずれの処理内容を割込処理内の出力処理で実行するかは、そのプログラムにおいて設定された割込みの周期と実行する処理負荷との関係で選択すればよい。
Also, for example, when the main processing cycle is 4 msec and the motor is switched on / off at every main processing cycle (every 4 msec) as in the prior art, an on-period of 10 msec is created. Although it was not possible, by executing the motor on / off control in the output process (step 500), the motor can be switched on and off every time an interrupt occurs (every 1 msec), and the on period of 10 msec. Thus, it is possible to control the motor with finer resolution as compared with the conventional control.
However, which processing content is executed in the output processing in the interrupt processing may be selected in accordance with the relationship between the interrupt cycle set in the program and the processing load to be executed.
このように、入力ポートの処理において、各割込処理では入力状態の保存のみを行ないその入力検出処理はメイン処理内で行うようにしたことにより、割込処理の負荷を軽減させことができ、各出力処理の中の短い分解能の制御が必要となる出力処理をその割込処理内で実行することができるようにした。これにより、分解能の細かな出力制御の処理ができるようになり、より綿密な遊技内容を提供することができる。 Thus, in the processing of the input port, only the input state is stored in each interrupt processing, and the input detection processing is performed in the main processing, so that the load of the interrupt processing can be reduced. An output process that requires a control with a short resolution in each output process can be executed in the interrupt process. As a result, it is possible to perform output control processing with fine resolution, and to provide more detailed game content.
1 パチンコ機
12 大入賞口開閉装置
18 遊技盤表示灯
20 本体表示灯
21 始動口開閉装置
22 図柄表示部
31 特別図柄始動SW
32 普通図柄始動SW
33 カウントSW
34 一般SW
35 払出計数SW
36 払出通路玉切りSW
37 皿満タンSW
40 主制御部(遊技制御手段)
41 I/Oポート
42 RAM
43 ROM
44 CPU
45 ROM
DESCRIPTION OF
32 Normal symbol start SW
33 count SW
34 General SW
35 Payout SW
36 Discharge path ball cutting SW
37 Dish full SW
40 Main control unit (game control means)
41 I /
43 ROM
44 CPU
45 ROM
Claims (5)
前記複数回発生する割り込みの各処理で、各入力ポートの状態を、複数設けられている入力バッファのそれぞれ異なるバッファへ格納する処理を行い、前記メイン処理で、前記複数の入力バッファに格納された入力状態の変化に基づいて入力信号の有無を判定する入力検出処理を行う遊技制御手段を備えたことを特徴とする遊技機。 In a gaming machine in which execution of main processing for processing a series of normal games is started every time a predetermined number of interruptions occur,
In each process of the interrupt generated multiple times, the state of each input port is stored in different buffers of the plurality of input buffers, and stored in the plurality of input buffers in the main process. A gaming machine comprising game control means for performing an input detection process for determining the presence or absence of an input signal based on a change in an input state.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009020504A JP5500832B2 (en) | 2009-01-30 | 2009-01-30 | Game machine |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009020504A JP5500832B2 (en) | 2009-01-30 | 2009-01-30 | Game machine |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013199880A Division JP5800875B2 (en) | 2013-09-26 | 2013-09-26 | Game machine |
JP2013199956A Division JP5832497B2 (en) | 2013-09-26 | 2013-09-26 | Game machine |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010172589A true JP2010172589A (en) | 2010-08-12 |
JP5500832B2 JP5500832B2 (en) | 2014-05-21 |
Family
ID=42704094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009020504A Active JP5500832B2 (en) | 2009-01-30 | 2009-01-30 | Game machine |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5500832B2 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014008106A (en) * | 2012-06-28 | 2014-01-20 | Fujishoji Co Ltd | Game machine |
JP2015051195A (en) * | 2013-09-09 | 2015-03-19 | サミー株式会社 | Pachinko game machine |
JP2016019782A (en) * | 2015-09-25 | 2016-02-04 | 株式会社藤商事 | Game machine |
JP2018027118A (en) * | 2016-08-15 | 2018-02-22 | 株式会社ユニバーサルエンターテインメント | Game machine |
JP2018027117A (en) * | 2016-08-15 | 2018-02-22 | 株式会社ユニバーサルエンターテインメント | Game machine |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003275429A (en) * | 2002-03-22 | 2003-09-30 | Daiman:Kk | Pachinko game machine |
JP2008148924A (en) * | 2006-12-18 | 2008-07-03 | Sanyo Product Co Ltd | Game machine |
JP2008161253A (en) * | 2006-12-27 | 2008-07-17 | Heiwa Corp | Game machine and performance control device |
-
2009
- 2009-01-30 JP JP2009020504A patent/JP5500832B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003275429A (en) * | 2002-03-22 | 2003-09-30 | Daiman:Kk | Pachinko game machine |
JP2008148924A (en) * | 2006-12-18 | 2008-07-03 | Sanyo Product Co Ltd | Game machine |
JP2008161253A (en) * | 2006-12-27 | 2008-07-17 | Heiwa Corp | Game machine and performance control device |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014008106A (en) * | 2012-06-28 | 2014-01-20 | Fujishoji Co Ltd | Game machine |
JP2015051195A (en) * | 2013-09-09 | 2015-03-19 | サミー株式会社 | Pachinko game machine |
JP2016019782A (en) * | 2015-09-25 | 2016-02-04 | 株式会社藤商事 | Game machine |
JP2018027118A (en) * | 2016-08-15 | 2018-02-22 | 株式会社ユニバーサルエンターテインメント | Game machine |
JP2018027117A (en) * | 2016-08-15 | 2018-02-22 | 株式会社ユニバーサルエンターテインメント | Game machine |
Also Published As
Publication number | Publication date |
---|---|
JP5500832B2 (en) | 2014-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4963354B2 (en) | Game machine | |
JP5341958B2 (en) | Game machine | |
JP5484501B2 (en) | Amusement stand | |
JP6240392B2 (en) | Game machine | |
JP2011010905A (en) | Game stand | |
JP2014171786A (en) | Game machine | |
JP2009112700A (en) | Game table | |
JP2009078036A (en) | Game machine | |
JP2009165744A (en) | Game machine | |
JP2010035664A (en) | Pinball game machine | |
JP5500832B2 (en) | Game machine | |
JP2007050109A (en) | Game machine | |
JP5164170B2 (en) | Amusement stand | |
JP2010051757A (en) | Pinball game machine | |
JP5800875B2 (en) | Game machine | |
JP2011125374A (en) | Game table | |
JP2012176069A (en) | Game machine | |
JP6121775B2 (en) | Game machine | |
JP5832497B2 (en) | Game machine | |
JP6056011B2 (en) | Amusement stand | |
JP5650075B2 (en) | Pachinko machine | |
JP5870364B2 (en) | Amusement stand | |
JP4385596B2 (en) | Game machine | |
JP2011078492A (en) | Game machine | |
JP6681791B2 (en) | Slot machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111019 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130109 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130731 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130926 |
|
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: 20140305 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140311 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5500832 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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |