JP2017189193A - 遊技機 - Google Patents

遊技機 Download PDF

Info

Publication number
JP2017189193A
JP2017189193A JP2016078621A JP2016078621A JP2017189193A JP 2017189193 A JP2017189193 A JP 2017189193A JP 2016078621 A JP2016078621 A JP 2016078621A JP 2016078621 A JP2016078621 A JP 2016078621A JP 2017189193 A JP2017189193 A JP 2017189193A
Authority
JP
Japan
Prior art keywords
checksum
processing
storage unit
order
divided
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.)
Pending
Application number
JP2016078621A
Other languages
English (en)
Inventor
務 冨士代
Tsutomu Fujishiro
務 冨士代
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Heiwa Corp
Original Assignee
Heiwa Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Heiwa Corp filed Critical Heiwa Corp
Priority to JP2016078621A priority Critical patent/JP2017189193A/ja
Publication of JP2017189193A publication Critical patent/JP2017189193A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Slot Machines And Peripheral Devices (AREA)

Abstract

【課題】遊技に関する大量のデータを記憶する大容量ROMについて、チェックサムによる照合を容易に実行できるようにする。【解決手段】大容量ROMのアドレスを複数(例えば10個)に分割するチェックサム処理分割指示テーブルを備え、割込処理においてチェックサム処理を分割して実行する(ある割込処理でチェックサム計算(1/10)を行い、次の割込処理でチェックサム計算(2/10)を行う、これを繰り返す)。各分割処理に係る領域は、割込時間内で完了できる程度に小さく選択されるので、遊技機が稼動中においてもチェックサムによる照合を行うことができ、ROMの内容の変化を迅速に検知することができる。【選択図】図7

Description

本発明は、処理部(CPU)と記憶部(ROM)を備える遊技機に関し、特にROMのチェックサム計算手法に関するものである。
外周面に図柄が配列された複数の回胴を備えた遊技機(回胴式遊技機、スロットマシン)が知られている。この種の遊技機は、遊技媒体(メダル)に対して一定の遊技価値を付与し、このような遊技媒体を獲得するための遊技を行うものである。また、この種の遊技機は、遊技者の回転開始操作を契機として、内部抽選を行うとともに複数の回胴の回転を開始させ、遊技者の停止操作契機として、内部抽選の結果に応じた態様で複数の回胴を停止させる制御を行っている。そして、遊技の結果は、複数の回胴が停止した状態における入賞判定ライン上に表示された図柄組み合わせによって判定され、遊技の結果に応じてメダル等の払い出しなどが行われる。
遊技者の興趣を高める役割を担うデバイスとして、液晶表示装置や演出用表示ランプ(電飾)や、音響発生装置(サウンド装置、スピーカ)などさまざまな演出デバイスが遊技機には設けられている。また、可動部を備え、当該可動部の動きにより演出を行う可動役物(可動体)が設けられることもある。なお、以下の説明において、液晶表示装置、電飾、音響発生装置そのもののみならずそれらの制御装置を含めて「演出デバイス」と表記することがある。
特開2012-192295号公報 パチンコ遊技機の制御基板において、ROMから読み込まれたRAMデータをRAMのデータが実行されるときにROMデータとチェックサムによる照合を行い、データ不一致の結果が出た場合に非常時処理としてエラー報知や再起動を実行する。 特開平8-215389号公報 制御データ時分割転送手段により、メイン制御部からサブ制御部に対して転送され、遊技態様に応じた図柄の表示内容を指令するコマンドデータを複数に分割し、各分割されたコマンドデータを時分割によって転送することにより、1回のデータ転送に要する時間が短くする。データチェック手段により、転送されたコマンドデータを転送前のコマンドデータに対してチェックすることにより、正常と判定された場合に限って、受信したコマンドデータ全体を記憶し、ノイズによる影響を受け、転送されたコマンドデータに雑音が混入するといった場合には、異常データとして破棄する。発明の目的は、図柄表示部上のチラツキや表示の歪みを防止し、ノイズによるコマンドデータの転送ミスが防止でき、常時鮮明な画面表示を可能とするものである。
抽選処理などの遊技に関する処理や、演出デバイスを用いて行う演出処理を実行するために、遊技機はCPU(中央処理装置)を備え、予め定められたプログラムに従って各種処理を実行している。プログラムはROM(読み出し専用メモリ)に記憶されている。さらに、ROMには各種処理に使用する音声データ、画像データなどのデータも記憶されている。
ROMに記憶されているデータは重要なものであるので、その内容がノイズ等で変化したり、あるいは不正な手段で改竄された場合にはこれを検知して報知する必要がある。具体的には、公知のチェックサムによる照合によりデータが同一であることを確認する。
ところで、演出内容の多様化に伴い音声データ、画像データなどのデータは増加の一途をたどり、ROMとして大容量の半導体メモリが使用されるようになってきている。新型の大容量のROMであってもその使用方法は従来のROMと同じであり、従来のCPU、プログラムで問題なく使用することができる。
このような大容量のROMについてチェックサムによる照合を遊技機の起動直後に纏めて行うと遊技機が操作可能になるまでに時間を要し、遊技開始が遅れてしまうという不都合がある。一方、遊技機が稼働中においてはCPUが遊技に関する各種処理を実行しているので、チェックサムによる照合は不可能であった。しかし、意図しないROMの内容の変化は遊技機の稼働中(CPUが遊技に係る処理を実行中)にも起こりうることであり、このような場合に直ちに検知して記録し、報知することが望ましい。
この発明は上記課題に鑑みてなされたもので、遊技機が稼動中においてチェックサムによるROMの内容の照合を実行し、ROMの内容の変化を迅速に検知することのできる遊技機を提供することを目的とする。
この発明は、中央処理装置と、読み出し専用の第1記憶部と、書き込みと読み出しが可能な第2記憶部と、予め定められた間隔で信号を出力するタイマ回路とを備え、前記中央処理装置は、メインループのプログラム及び前記タイマ回路の出力に基づき実行が開始される割込処理のプログラムに基づき遊技に係る処理を実行する遊技機において、
前記割込処理のプログラムは、前記第1記憶部のチェックサムを求めるためのプログラムを含み、
前記第2記憶部は、チェックサム計算の途中の値を記憶し、
さらに、
前記第1記憶部においてチェックサム計算の対象となる領域を予め複数に分割したもの(以下「分割領域」)の情報を、それぞれの分割領域についてチェックサム計算の順番に対応付けて予め記憶するチェックサム処理分割指示テーブルと、
前記第1記憶部のチェックサム値を予め記憶するチェックサム値記憶部と、を備え、
前記中央処理装置は、前記割込処理において、
前記チェックサム計算の順番を確認して当該順番が最後でないときは第2ステップに進み、最後であるときに前記チェックサム計算の順番を初期値に戻して処理を終了する第1ステップと、
前記チェックサム処理分割指示テーブルに基づき前記分割領域のいずれかについてチェックサムを計算する第2ステップと、
前記第2ステップで計算したチェックサム値を前記途中の値に加算する第3ステップと、
前記チェックサム計算の順番が最後であるとき、前記第3ステップで加算された前記途中の値をチェックサム値として前記チェックサム値記憶部に予め記憶されたチェックサム値と比較する第4ステップと、
前記第4ステップにおける比較が不一致であるとき、予め定められたエラー処理を行う第5ステップと、
前記チェックサム計算の順番が最後でないとき、前記チェックサム計算の順番を次に進める第6ステップと、を実行する、ものである。
この発明は、中央処理装置と、読み出し専用の第1記憶部と、書き込みと読み出しが可能な第2記憶部と、予め定められた間隔で信号を出力するタイマ回路とを備え、前記中央処理装置は、メインループのプログラム及び前記タイマ回路の出力に基づき実行が開始される割込処理のプログラムに基づき遊技に係る処理を実行する遊技機において、
前記割込処理のプログラムは、前記第1記憶部のチェックサムを求めるためのプログラムを含み、
さらに、
前記第1記憶部においてチェックサム計算の対象となる領域を予め複数に分割したもの(以下「分割領域」)の情報を、それぞれの分割領域についてチェックサム計算の順番に対応付けて予め記憶するチェックサム処理分割指示テーブルと、
前記第1記憶部の前記分割領域それぞれに対応する複数のチェックサム値(以下「分割チェックサム値」を予め記憶するチェックサム値記憶部と、を備え、
前記中央処理装置は、前記割込処理において、
前記チェックサム計算の順番を確認して当該順番が最後でないときは第2ステップに進み、最後であるときに前記チェックサム計算の順番を初期値に戻して処理を終了する第1ステップと、
前記チェックサム処理分割指示テーブルに基づき前記分割領域のいずれかについてチェックサムを計算する第2ステップと、
前記第2ステップで計算したチェックサム値を、前記チェックサム値記憶部の複数の分割チェックサム値のうちで対応するものと比較する第3ステップと、
前記第3ステップにおける比較が不一致であるとき、予め定められたエラー処理を行う第4ステップと、
前記チェックサム計算の順番を次に進める第5ステップと、を実行する、ものである。
例えば、前記タイマ回路の出力間隔をTt、前記メインループの処理時間をTm、前記割込処理の処理時間からチェックサムの計算時間を除いた時間をTiとし、
前記分割領域の大きさは、チェックサムの計算時間Tsが式:Ts≦Tt−Tm−Tiを満たすように定められている。
この発明によれば、チェックサム処理分割指示テーブルを備え、割込処理においてチェックサム処理を分割して実行するようにしたので、遊技機が稼動中においてもチェックサムによる照合を行うことができ、読み出し専用の第1記憶部(ROM)の内容の変化を迅速に検知することができるようになった。
前扉を閉めた状態を示すスロットマシンの斜視図である。 前扉を開いた状態を示すスロットマシンの斜視図である。 スロットマシンのブロック図である。 スロットマシンの遊技処理のフローチャートである。 発明の実施の形態に係る処理部(メイン基板、サブ基板)のブロック図である。 発明の実施の形態に係る割込処理とメインループの説明図(タイミングチャート)である。 発明の実施の形態に係る分割チェックサム計算の説明図である。 発明の実施の形態に係るROM(第1記憶部)の記憶領域の説明図である。 発明の実施の形態に係るチェックサム処理分割指示テーブルの説明図である。 発明の実施の形態に係るチェックサム処理のフローチャートである。 変形例に係る処理部(メイン基板、サブ基板)のブロック図である。 変形例に係るチェックサム処理分割指示テーブルと分割チェックサム値テーブルの説明図である。 変形例に係るチェックサム処理のフローチャートである。
<遊技機の構造>
図1は前扉を閉めた状態を示すスロットマシンの正面図、図2は前扉を開いた状態を示すスロットマシンの正面図を示す。なお、以下の説明において、上、下、左又は右の方向は、特に断らない限り、スロットマシンに対向している遊技者から見た方向を指すものとする。
図1及び図2中、100はスロットマシンを示すもので、このスロットマシン100は、スロットマシン筐体120と、このスロットマシン筐体120の前面片側にヒンジ等により開閉可能に取り付けられた前扉130とを備えている。前扉130は、それぞれ独立に開閉可能な上扉130Uと下扉130Lとを備えている。
前記前扉130の前面の右上隅には、ゲーム表示部131を設けている。遊技者はゲーム表示部131を通してリールユニット203の3つのリールを見ることができる。
上扉130Uの上面の右側に、遊技者がメダルを投入するためのメダル投入口132を設け、メダル投入口132の左側には、メダル投入口132から投入され、詰まってしまったメダルをスロットマシン100外に強制的に排出するためのリジェクトボタン133を設けている。
下扉130Lの上面の左側にはゲームを開始するためのスタートスイッチ134を設け、スタートスイッチ134とメダル投入口132の間に、3つのリールのそれぞれに対応して3つのストップボタン140を設けている。
上扉130Uの中央には液晶パネルLCD1を設け、下扉130Lにはほぼその全面にわたって液晶パネルLCD2を設けている。
下扉130Lの上面の中央、すなわち、ストップボタン140の上、ベットスイッチBETとメダル投入口132の間には、操作部としてのスイッチ(十字キーユニット)SWを設けている。スイッチSWは、例えばカーソルを上下左右に動かすカーソルキー(スイッチ)や操作の確定ボタン・キャンセルボタンなどを含む。
スロットマシン100の左右端にはそれぞれ電飾DRU、DRL、DLU、DLLを設けている。すなわち、上扉130Uの左端に電飾DLUを設け、右端に電飾DRUを設けるとともに、下扉130Lの左端に電飾DLLを設け、右端に電飾DRLを設けている。電飾DRU、DRL、DLU、DLLは、それぞれその内部に発光素子(LED)を備えている。
スロットマシン筐体120の内部には、図2に示すように、その内底面に固定され、内部に複数のメダルを貯留して、貯留したメダルを下扉130Lの前面下部に設けた払出し口に1枚ずつ払い出すためのホッパ装置121が設置されている。このホッパ装置121の上部には、上方に向けて開口し、内部に多数のメダルを貯留するホッパタンク122を備えている。スロットマシン筐体120の内部には、上扉130Uを閉めたときにゲーム表示部131が来る位置に三個のリールからなるリールユニット203が設置されている。リールユニット203は、外周面に複数種類の図柄が配列されている3つのリール(第1リール〜第3リール)を備えている。ゲーム表示部131には開口部が設けられていて、それを通して遊技者が前記リールユニット203の各回転リールの図柄を見ることができるようになっている。ホッパ装置121の左側には電源部205を設けている。
図2に示すように、下扉130Lの背面にはメダル(コイン)セレクタ1が、下扉130L上面のメダル投入口132の下部に取り付けられている。このメダルセレクタ1は、メダル投入口132から投入されたメダルの通過を検出しながら、当該メダルをホッパ装置121に向かって転動させ、外径が所定寸法と違う異径メダルや、鉄又は鉄合金で作製された不正メダルを選別して排除するとともに、1ゲームあたりに投入可能な所定枚数以上のメダルを選別して排除するための装置である。
また、メダルセレクタ1の下側には、図2に示すように、その下部側を覆って下扉130L下部の払出し口に連通する導出路136を設けている。メダルセレクタ1により振り分けられたメダルは、この導出路136を介して払出し口から遊技者に返却される。
スロットマシン筐体120の内部、リールユニット203の下側にはメイン基板10が取り付けられている。メイン基板10には、遊技に関する内部設定(例えば、複数の抽選テーブルのどれを使用するか)を行うための設定変更スイッチSSWを設けている。上扉130Uの背面中央下部にはサブ基板20が取り付けられている。
スロットマシン筐体120の内部の左上隅には低音スピーカSPLを設けるとともに、下扉130Lの下部には標準的な音域をカバーする2つのスピーカSPを設けている。
図3はスロットマシン100の機能ブロック図を示す。
この図において電源系統についての表示は省略されている。図3では示していないが、スロットマシンは商用電源(AC100V)から直流電源(+5Vなど)を発生するための電源部(図2の電源部205)を備える。
スロットマシン100は、その主要な処理装置としてメイン基板10とこれからコマンドを受けて動作するサブ基板20とを備える。メイン基板10やサブ基板を含む基板は、外部から接触不能となるようにケース内部に収容され、これら基板を取り外す際に痕跡が残るように封印処理が施されている。具体的には、メイン基板10とサブ基板20はカシメにより一体となり取り付けられるとともに、メイン基板10とサブ基板20の全体を覆う一体のケースによりカバーされている。
メイン基板10は、遊技者の操作を受けて内部抽選を行ったり、回胴の回転・停止やメダルの払い出しなどの処理(遊技処理)を行うためのものである。メイン基板10は、予め設定されたプログラムに従って制御動作を行うCPUと、前記プログラムを記憶する記憶手段であるROMおよび処理結果などを一時的に記憶するRAMを含む。
サブ基板20は、メイン基板10からコマンド信号を受けて内部抽選の結果を報知したり各種演出を行うためのものである。サブ基板20は、前記コマンド信号に応じた予め設定されたプログラムに従って制御動作を行うCPUと、前記プログラムを記憶する記憶手段であるROMおよび処理結果などを一時的に記憶するRAMを含む。コマンドの流れはメイン基板10からサブ基板20への一方のみであり、逆にサブ基板20からメイン基板10へコマンド等が出されることはない。サブ基板20は、演出に用いる乱数を発生する手段を備えている。
以下、メイン基板とサブ基板について詳しく説明する。
<メイン基板>
メイン基板10には、ベットスイッチBET、スタートスイッチ134、ストップボタン140、リール(回胴)ユニット203、設定変更スイッチSSW、ホッパ駆動部80、ホッパ81及びホッパ81から払い出されたメダルの枚数を数えるためのメダル検出部82(これらは前述のホッパ装置121を構成する)が接続されている。
メイン基板10には、さらに、メダルセレクタ1のメダルセンサS1及びS2が接続されている。
メダルセレクタ1には、メダルを計数するためのメダルセンサS1及びS2を設けている。メダルセンサS1及びS2は、メダルセレクタ1に設けられた図示しないメダル通路の下流側(出口近傍)に取り付けられている(メダル通路の上流側はメダル投入口132に連通している)。2つのメダルセンサS1とS2は、メダルの進行方向に沿って所定間隔を空けて並べて設けている。メダルセンサS1、S2は、例えば、互いに対向した発光部と受光部とを有して断面コ字状に形成され、その検出光軸をメダル通路内に上方から臨ませて位置するフォトインタラプタである。各フォトインタラプタにより、途中で阻止されずに送られてきたメダルの通過が検出される。なお、フォトインタラプタを2つ隣接させたのは、メダル枚数を検出するだけでなく、メダルの通過が正常か否かを監視するためである。すなわち、フォトインタラプタを2つ隣接させて設けることにより、メダルの通過速度や通過方向を検出することができ、これによりメダル枚数だけでなく、逆方向に移動する不正行為を感知することができる。
リールユニット203は、3つの回胴40a〜40cと、これらをそれぞれ回転させるステッピングモータ155a〜155cと、それらの位置をそれぞれ検出する回胴位置検出器(インデックスセンサ)159a〜159cとを備える(なお、ステッピングモータ155a〜155cを単にモータ155あるいはモータと記すことがある)。
回胴制御手段1300は、回胴40a〜40cそれぞれが1回転する毎にインデックスセンサ159で検出される基準位置信号に基づいて、回胴40の基準位置(図示しないインデックスによって特定されるコマ)からの回転角度を求める(ステップモータの回転軸の回転ステップ数をカウントする)ことによって、現在の回胴40の回転状態を監視することができるようになっている。すなわち、メイン基板10は、回胴40の基準位置からの回転角度を求めることにより、ストップボタン140の作動時における回胴40の位置を得ることができる。
なお、以下の説明において、任意のひとつ又は複数の回胴を示すときは符号40を使用し、3つの回胴をそれぞれ区別して示すときは符号40a〜40cを使用することにする。
ホッパ駆動部80は、ホッパ81の図示しない回転ディスクを回転駆動して、メイン基板10によって指示された払出数のメダルを払い出す動作を行う。遊技機は、メダルを1枚払い出す毎に作動するメダル検出部82を備えており、メイン基板10は、メダル検出部82からの入力信号に基づいてホッパ81から実際に払い出されたメダルの数を管理することができる。
投入受付部(投入受付手段)1050は、メダルセレクタ1のメダルセンサS1とS2の出力を受け、遊技毎にメダルの投入を受け付けて、規定投入数に相当するメダルが投入されたことに基づいて、スタートスイッチ134に対する第1回胴〜第3回胴の回転開始操作を許可する処理を行う。なお、スタートスイッチ134の押下操作が、第1回胴〜第3回胴の回転を開始させる契機となっているとともに、内部抽選を実行する契機となっている。また、遊技状態に応じて規定投入数を設定してもよく、通常状態およびボーナス成立状態及びボーナス状態では規定投入数を3枚に設定する。
メダルが投入されると、遊技状態に応じた規定投入数を限度として、投入されたメダルを投入状態に設定する。あるいは、遊技機にメダルがクレジットされた状態で、ベットスイッチBETが押下されると、遊技状態に応じた規定投入数を限度して、クレジットされたメダルを投入状態に設定する。メダルの投入を受け付けるかどうかは、メイン基板10が制御する。スタートスイッチ134が押下され各回胴の回転が開始した時点(遊技開始時点)から3つのストップボタン140が押下され各回胴の回転が停止した時点(入賞した場合はメダル払い出しが完了した時点)(遊技終了時点)の間であって、メダルの投入を受け付ける状態になっていないときは(許可されていないときは)、メダルを投入してもメダルセンサS1、S2でカウントされず、そのまま返却される。同様に、メイン基板10は、メダルの投入を受け付ける状態か否かに応じて、ベットスイッチBETの有効/無効を制御する。また、前記遊技終了時点から前記遊技開始時点までの間でベットスイッチBETは有効となるが、これ以外の期間においては(BETスイッチの押下が許可されていないときは)、ベットスイッチBETを押下しても、それは無視される。
メイン基板10は、乱数発生手段1100を内蔵する。乱数発生手段1100は、抽選用の乱数値を発生させる手段である。乱数値は、例えば、インクリメントカウンタ(所定のカウント範囲を循環するように数値をカウントするカウンタ)のカウント値に基づいて発生させることができる。なお本実施形態において「乱数値」には、数学的な意味でランダムに発生する値のみならず、その発生自体は規則的であっても、その取得タイミング等が不規則であるために実質的に乱数として機能しうる値も含まれる。
内部抽選手段1200は、遊技者がスタートスイッチ134からのスタート信号に基づいて、役の当否を決定する内部抽選を行う。すなわち、メイン基板10のメモリ(図示せず)に記憶されている抽選テーブル(図示せず)を選択する抽選テーブル選択処理、乱数発生手段1100から得た乱数の当選を判定する乱数判定処理、当選の判定結果で大当たりなどに当選したときにその旨の判定結果を設定する抽選フラグ設定処理などを行う。
抽選テーブル選択処理では、図示しない記憶手段(ROM)に格納されている複数の抽選テーブル(図示せず)のうち、いずれの抽選テーブルを用いて内部抽選を行うかを決定する。抽選テーブルでは、複数の乱数値(例えば、0〜65535の65536個の乱数値)のそれぞれに対して、リプレイ、小役(ベル、チェリー)、レギュラーボーナス(RB:ボーナス)、およびビッグボーナス(BB:ボーナス)などの各種の役が対応づけられている。また、遊技状態として、通常状態、ボーナス成立状態、およびボーナス状態が設定可能とされ、さらにリプレイの抽選状態として、リプレイ無抽選状態、リプレイ低確率状態、リプレイ高確率状態が設定可能とされる。
抽選テーブル選択処理により、抽選の内容は所定の範囲内で設定可能(当選の確率を高くしたり低くしたりできる)であり、遊技機が設置されるホールなどにおいて店側により設定作業が行われる。この設定作業で使用するスイッチが設定変更スイッチSSWである。
通常の遊技機は、BB,RB、小役等の抽選確率の異なる複数(例えば6つ)の抽選テーブルを予め備える。遊技機の抽選では、それら複数の抽選テーブルの中から1つが設定され、この設定された抽選テーブルに基づいて抽選による当たり/ハズレの判定がなされる。複数の抽選テーブルのうちどれを使用するかに関する設定を変更することを、設定の変更(以下、「設定変更」と記す)と称している。
従来、例えばスロットマシンのような遊技機では、設定値(通常1〜6)を変更する場合、遊技機の扉を開け、メイン基板10に設けられた設定変更スイッチSSWのキースイッチに設定変更キーを挿入して当該キースイッチをオンにした状態で遊技機の電源を投入して設定変更可能な状態にし、設定変更スイッチSSWの設定変更ボタン(押ボタン)を1回押下するごとに、7セグメント表示器などに表示される設定値がインクリメントされて1〜6までの値を循環的に変化させ、所望する設定値が表示器に表示されたところでスタートスイッチを操作することで、所望する設定値を確定させている。
乱数判定処理では、スタートスイッチ134からのスタート信号に基づいて、遊技毎に乱数発生手段(図示せず)から乱数値(抽選用乱数)を取得し、取得した乱数値について前記抽選テーブルを参照して役に当選したか否かを判定する。
抽選フラグ設定処理では、乱数判定処理の結果に基づいて、当選したと判定された役の抽選フラグを非当選状態(第1のフラグ状態、オフ状態)から当選状態(第2のフラグ状態、オン状態)に設定する。2種類以上の役が重複して当選した場合には、重複して当選した2種類以上の役のそれぞれに対応する抽選フラグが当選状態に設定される。抽選フラグの設定情報は、記憶手段(RAM)に格納される。
入賞するまで次回以降の遊技に当選状態を持ち越し可能な抽選フラグ(持越可能フラグ)と、入賞の如何に関わらず次回以降の遊技に当選状態を持ち越さずに非当選状態にリセットされる抽選フラグ(持越不可フラグ)とが用意されていることがある。この場合、前者の持越可能フラグが対応づけられる役としては、レギュラーボーナス(RB)およびビッグボーナス(BB)があり、それ以外の役(例えば、小役、リプレイ)は後者の持越不可フラグに対応づけられている。すなわち抽選フラグ設定処理では、内部抽選でレギュラーボーナスに当選すると、レギュラーボーナスの抽選フラグの当選状態を、レギュラーボーナスが入賞するまで持ち越す処理を行い、内部抽選でビッグボーナスに当選すると、ビッグボーナスの抽選フラグの当選状態を、ビッグボーナスが入賞するまで持ち越す処理を行う。このときメイン基板10は、内部抽選機能により、レギュラーボーナスやビッグボーナスの抽選フラグの当選状態が持ち越されている遊技でも、レギュラーボーナスおよびビッグボーナス以外の役(小役およびリプレイ)についての当否を決定する内部抽選を行っている。すなわち抽選フラグ設定処理では、レギュラーボーナスの抽選フラグの当選状態が持ち越されている遊技において、内部抽選で小役あるいはリプレイが当選した場合には、既に当選しているレギュラーボーナスの抽選フラグと内部抽選で当選した小役あるいはリプレイの抽選フラグとからなる2種類以上の役に対応する抽選フラグを当選状態に設定し、ビッグボーナスの抽選フラグの当選状態が持ち越されている遊技において、内部抽選で小役あるいはリプレイが当選した場合には、既に当選しているビッグボーナスの抽選フラグと内部抽選で当選した小役あるいはリプレイの抽選フラグとからなる2種類以上の役に対応する抽選フラグを当選状態に設定する。
回胴制御手段1300は、遊技者がスタートスイッチ134の押下操作(回転開始操作)によるスタート信号に基づいて、第1回胴〜第3回胴をステッピングモータにより回転駆動して、第1回胴〜第3回胴の回転速度が所定速度(約80rpm:1分間あたり約80回転となる回転速度)に達した状態において回転中の回胴にそれぞれ対応する3つのストップボタン140の押下操作(停止操作)を許可する制御を行うとともに、ステッピングモータにより回転駆動されている第1回胴〜第3回胴を抽選フラグの設定状態(内部抽選の結果)に応じて停止させる制御を行う。
また、回胴制御手段1300は、3つのストップボタン140に対する押下操作(停止操作)が許可(有効化)された状態において、遊技者が3つのストップボタン140を押下することにより、その回胴停止信号に基づいて、リールユニット203のステッピングモータへの駆動パルス(モータ駆動信号)の供給を停止することにより、第1回胴〜第3回胴の各回胴を停止させる制御を行う。
すなわち、回胴制御手段1300は、3つのストップボタン140の各ボタンが押下される毎に、第1回胴〜第3回胴のうち押下されたボタンに対応する回胴の停止位置を決定して、決定された停止位置で回胴を停止させる制御を行っている。具体的には、記憶手段(ROM)に記憶されている停止制御テーブル(図示せず)を参照して3つのストップボタンの押下タイミングや押下順序等(停止操作の態様)に応じた第1回胴〜第3回胴の停止位置を決定し、決定された停止位置で第1回胴〜第3回胴を停止させる制御を行う。
ここで停止制御テーブルでは、ストップボタン140の作動時点における第1回胴〜第3回胴の位置(押下検出位置)と、第1回胴〜第3回胴の実際の停止位置(または押下検出位置からの滑りコマ数)との対応関係が設定されている。滑りコマ数とは、回胴停止時にゲーム表示部から視認できる特定の図柄を基準位置としたときのストップボタン140の操作から対応する回胴の回転停止までの間に当該基準位置を通過する図柄の数をいう。回胴制御手段1300は、各ストップボタン140の操作から190ms以内という条件下で各回胴を停止させるため、滑りコマ数は0以上4以下の範囲内となっている(ただし、80回転/分、図柄数=21個の条件において)。抽選フラグの設定状態に応じて、第1回胴〜第3回胴の停止位置を定めるための停止制御テーブルが用意されることもある。
前述のように、回胴制御手段1300は、回胴が1回転する毎にインデックスセンサ159で検出される基準位置信号に基づいて、回胴の基準位置(リールインデックスによって検出されるコマ)からの回転角度(ステップモータの回転軸の回転ステップ数)を求めることによって、現在の回胴の回転状態を監視することができるようになっている。すなわち、メイン基板10は、ストップボタン140の作動時における回胴の位置を、回胴の基準位置からの回転角度を求めることにより得ることができる。
回胴制御手段1300は、いわゆる引き込み処理と蹴飛ばし処理とを回胴を停止させる制御として行っている。引き込み処理とは、抽選フラグが当選状態に設定された役に対応する図柄が有効な入賞判定ライン上に停止するように(当選した役を入賞させることができるように)回胴を停止させる制御処理である。一方蹴飛ばし処理とは、抽選フラグが非当選状態に設定された役に対応する図柄が有効な入賞判定ライン上に停止しないように(当選していない役を入賞させることができないように)回胴を停止させる制御処理である。すなわち本実施形態の遊技機では、上記引き込み処理及び蹴飛ばし処理を実現させるべく、抽選フラグの設定状態、ストップボタン140の押下タイミング、押下順序、既に停止している回胴の停止位置(表示図柄の種類)などに応じて各回胴の停止位置が変化するように停止制御テーブルが設定されている。このように、メイン基板10は、抽選フラグが当選状態に設定された役の図柄を入賞の形態で停止可能にし、一方で抽選フラグが非当選状態に設定された役の図柄が入賞の形態で停止しないように第1回胴〜第3回胴を停止させる制御を行っている。
本実施形態の遊技機では、第1回胴〜第3回胴が、ストップボタン140が押下された時点から190ms以内に、押下されたストップボタンに対応する回転中の回胴を停止させる制御状態に設定されている。すなわち回転している各回胴の停止位置を決めるための停止制御テーブルでは、ストップボタン140の押下時点から各回胴が停止するまでに要するコマ数が0コマ〜4コマの範囲(所定の引き込み範囲)で設定されている。
入賞判定手段1400は、第1回胴〜第3回胴の停止態様に基づいて、役が入賞したか否かを判定する処理を行う。具体的には、記憶手段(ROM)に記憶されている入賞判定テーブルを参照しながら、第1回胴〜第3回胴の全てが停止した時点で入賞判定ライン上に表示されている図柄組合せが、予め定められた役の入賞の形態であるか否かを判定する。
入賞判定手段1400は、その判定結果に基づいて、入賞時処理を実行する。入賞時処理としては、例えば、小役が入賞した場合にはホッパ81を駆動してメダルの払出制御処理が行われるか、あるいはクレジットの増加され(規定の最大枚数例えば50枚まで増加され、それを超えた分だけ実際にメダル払い出される)、リプレイが入賞した場合にはリプレイ処理が行われ、ビッグボーナスやレギュラーボーナスが入賞した場合には遊技状態を移行させる遊技状態移行制御処理が行われる。
払出制御手段1500は、遊技結果に応じたメダルの払い出しに関する払出制御処理を行う。具体的には、小役が入賞した場合に、役毎に予め定められている配当に基づいて遊技におけるメダルの払出数を決定し、決定された払出数に相当するメダルを、ホッパ駆動部80でホッパ81を駆動して払い出させる。この際に、ホッパ81に内蔵される図示しないモータに電流が流れることになる。
メダルのクレジット(内部貯留)が許可されている場合には、ホッパ81によって実際にメダルの払い出しを行う代わりに、記憶手段(RAM)のクレジット記憶領域(図示省略)に記憶されているクレジット数(クレジットされたメダルの数)に対して払出数を加算するクレジット加算処理を行って仮想的にメダルを払い出す処理を行う。
リプレイ処理手段1600は、リプレイが入賞した場合に、次回の遊技に関して遊技者の所有するメダルの投入を要さずに前回の遊技と同じ準備状態に設定するリプレイ処理(再遊技処理)を行う。リプレイが入賞した場合には、遊技者の手持ちのメダル(クレジットメダルを含む)を使わずに前回の遊技と同じ規定投入数のメダルが自動的に投入状態に設定される自動投入処理が行われ、遊技機が前回の遊技と同じ入賞判定ラインを有効化した状態で次回の遊技における回転開始操作(遊技者によるスタートスイッチ134の押下操作)を待機する状態に設定される。
リプレイ処理手段1600は、所定条件下で内部抽選におけるリプレイの当選確率を変動させる制御を行うことがある。例えば、ストップボタン140の操作によって回胴を停止させた際に所定の出目が表示されるとリプレイの当選確率が変動する。リプレイの抽選状態として、リプレイが内部抽選の対象から除外されるリプレイ無抽選状態、リプレイの当選確率が約1/7.3に設定されるリプレイ低確率状態、およびリプレイの当選確率が約1/6に設定されるリプレイ高確率状態という複数種類の抽選状態を設定可能とされている。
エラー処理部1700は、図示しない扉開閉検知センサ、メダルセンサS1及びS2及びメダル検出部82の出力に基づき遊技機のエラー判定を行い、エラーと判定したときにその旨を報知するとともに、遊技機を所定の状態(例えば、操作を受け付けない状態)にする。
図示しない扉開閉検知センサは、前扉130(上扉130U、下扉130L)が閉じられたことを検知するセンサであり、例えばマイクロスイッチや接点などの電気的スイッチである。当該スイッチは前扉130(上扉130U、下扉130L)が閉じられたときに、前扉130(上扉130U、下扉130L)の裏側にスイッチの作用部が当接することでオン(又はオフ)になり、前扉130(上扉130U、下扉130L)が開放されると作用部が離れてオフ(又はオン)になるものである。扉開閉検知センサは、フォトインタラプタのような光学式のものでもよい。メダルセンサS1及びS2及びメダル検出部82については前述した。
エラー処理部1700は、具体的には次のような動作を行う。
・図示しない扉開閉検知センサの出力に基づき前扉130(上扉130U、下扉130L)の開放を検知したとき、エラー処理を行う。
・メダルセンサS1及びS2の出力に基づきメダルの逆流(センサS1とS2の検知順序が反対になったこと)、メダル滞留(センサS1とS2の検知時間が予め定められた閾値よりも長いこと)などを検知したとき、エラー処理を行う。
・メダル検出部82の出力に基づきメダル詰まり(メダル検出部82の検知時間が予め定められた閾値よりも長いこと)、ホッパーエンプティ(ホッパ駆動部80を動作させているにもかかわらずメダル検出部82がメダルを検知しない)などを検知したとき、エラー処理を行う。
エラー処理部1700は、上記のようにエラーと判定したときにその旨を報知するとともに、遊技機を所定の状態(エラー状態)にするが、この状態は図示しないリセットスイッチにより解除される。リセットスイッチは、例えば電源部205のパネルに設けられる。
なお、サブ基板20で生じるエラーもある。このエラーでは遊技不能状態にはならないが、サブ基板20自身の処理によりエラーが生じたことを液晶表示装置などにより報知することができる。当該エラーは例えば不正なコマンドを受信したとき(暗号化されたコマンドが正しく復号化できなかったときを含む)に発生し、当該エラーは上記リセットスイッチにより解除される(メイン基板10からサブ基板20へリセットコマンドが送られる)。
また、メイン基板10は、通常状態、ボーナス成立状態、およびボーナス状態の間で遊技状態を移行させる制御を行うことがある(遊技状態移行制御機能)。遊技状態の移行条件は、1の条件が定められていてもよいし、複数の条件が定められていてもよい。複数の条件が定められている場合には、複数の条件のうち1の条件が成立したこと、あるいは複数の条件の全てが成立したことに基づいて、遊技状態を他の遊技状態へ移行させることができる。
通常状態は、複数種類の遊技状態の中で初期状態に相当する遊技状態で、通常状態からはボーナス成立状態への移行が可能となっている。ボーナス成立状態は、内部抽選でビッグボーナスあるいはレギュラーボーナスに当選したことを契機として移行する遊技状態である。ボーナス成立状態では、通常状態における内部抽選でビッグボーナスが当選した場合、ビッグボーナスが入賞するまでビッグボーナスに対応する抽選フラグが当選状態に維持され、通常状態における内部抽選でレギュラーボーナスが当選した場合、レギュラーボーナスが入賞するまでレギュラーボーナスに対応する抽選フラグが当選状態に維持される。ボーナス状態では、ボーナス遊技によって払い出されたメダルの合計数により終了条件が成立したか否かを判断し、入賞したボーナスの種類に応じて予め定められた払出上限数を超えるメダルが払い出されると、ボーナス状態を終了させて、遊技状態を通常状態へ復帰させる。
リールユニット203は、3つの回胴40a〜40cを備えるが、3つの回胴40a〜40cそれぞれにひとつづつステッピングモータ155a〜155cが取り付けられている。ステッピングモータ155は、回転子(ロータ)として歯車状の鉄心あるいは永久磁石を備え、固定子(ステータ)として複数の巻線(コイル)を備え、電流を流す巻線を切り替えることによって回転動作させるものである。すなわち、固定子の巻線に電流を流して磁力を発生させ、回転子を引きつけることで回転するものである。回転軸を指定された角度で停止させることが可能なことから、スロットマシンの回胴の回転駆動に使用されている。複数の巻線がひとつの相を構成する。相の数として、例えば、2つ(二相)、4つ(4相)、5つ(5相)のものもある。
ステッピングモータは、各相の巻線への電流の与え方を変えることにより、特性を変えることができる(励磁モードが変わる)。二相型については次の通りである。
・一相励磁
常に巻線一相のみに電流を流す。位置決め精度は良い。
・二相励磁
二相に電流を流す。一相励磁の約2倍の出力トルクが得られる。位置決め精度は良く、停止したときの静止トルクが大きいため、停止位置を確実に保持できる。
・一−二相励磁
一相と二相を交互に切り替えて電流を流す。一相励磁・二相励磁の場合のステップ角度の半分にすることができるので、滑らかな回転を得られる。
なお、ステッピングモータを「駆動する」とは、当該モータを上記励磁により回転させることとともに、所望の位置で停止させその位置を保持するために各相を励磁することも含むものとする。
スロットマシンの回胴40a〜40cの駆動に関して、例えば、4相の基本ステップ角度1.43度のステッピングモータを使用し、パルスの出力方法として一−二相励磁を採用している。
10CGは、サブ基板20へ送るコマンドを送信するコマンド送信部である。このコマンドには、当選役の情報に関するコマンド、メダル投入枚数やクレジット枚数(貯留枚数)の情報に関するコマンドなどがある。コマンド送信部10CGは、具体的には、メイン基板10に搭載されたROMに予め書き込まれたプログラムをCPUが実行することで実現される。コマンド送信については、後に説明を加える。
<サブ基板>
サブ基板20には、液晶パネルLCD1及びLCD2、LED基板202B、202U及び202L、スピーカSP、低音スピーカSPL、ソレノイドSN、モータMU及びML、センサSENU及びSENL、スイッチSWが接続されている。LED基板202B、202L、202Uは、データを取得し保持するラッチと電飾であるLEDを内蔵している(LEDは基板の外部に設けられることもある)。これらの構成要素は、サブ基板20により制御されるものであり、映像、光、音響、可動体の動作により演出を行う出力装置、あるいは、可動体の動作を検知するための入力装置または遊技者による操作を受け付ける入力装置である。
図示は省略しているが、機種固有ブロックBB及び下扉ブロックBLには、液晶パネルLCD2を制御するためのビデオコントローラ(VDC)、スピーカSP、スピーカSPを駆動して音響を発生させるためのサウンドコントローラ、ソレノイドSN、モータMU及びMLを駆動するための駆動回路を(図示しない)内蔵している。
上述した液晶パネルなどの構成要素は、低音スピーカSPLを除き、スロットマシン筐体120に内蔵される機種固有ブロックBB、上扉130Uに対応して設けられる上扉ブロックBU、下扉130Lに対応して設けられる下扉ブロックBLの3つのいずれかに区別されて設けられる。
図3の例では、機種固有ブロックBBはソレノイドSN、スピーカSP及びLED202Bを含み、上扉ブロックBUは、液晶パネルLCD1、LED203U、モータMU及びこれによる可動体の動作を検知するセンサSENUを含み、下扉ブロックBLは、液晶パネルLCD2、スピーカSP、LED基板202L、モータML、モータMLによる可動体の動作を検知するセンサSENL、カーソルキーなどのスイッチSWを含む。なお、液晶パネルLCD2全体がモータMLにより若干前後に移動可能に構成され、液晶パネルLCD2が前に出た状態で遊技者がこれを押すという操作が可能な場合がある。この場合、下扉ブロックBLのスイッチSWは液晶パネルLCD2の押下を検知するスイッチを含む。
<メイン基板からサブ基板へのコマンド伝送>
サブ基板20はメイン基板10からコマンドをうけ、これに従って演出等の処理を行う。コマンドの流れはメイン基板10からサブ基板20への一方のみであり、逆にサブ基板20からメイン基板10へコマンド等が出されることはない。
サブ基板20は、メイン基板10からのコマンドに従い、例えば、予め定められた画面を液晶パネルLCD1、LCD2に表示させるためのコマンド(表示コマンド、描画コマンド)を発生させる。例えば、アニメーションなどにより演出を行う際には、多数のコマンドを連続的に次々と送信する。
図3において、20CRは、メイン基板10から受けたコマンドを受信するコマンド受信部である。コマンド受信部20CRは、具体的には、サブ基板20に搭載されたROMに予め書き込まれたプログラムをCPUが実行することで実現される。
上記コマンドとして、サブ基板20側のソフトウエアで当選内容を示唆する演出を行うためのものがある。例えば、下記ATのように、出玉を得るための示唆を液晶表示装置等の表示装置に表示して遊技者の操作の便宜の提供(アシスト)を図っている。当該示唆は常時出されるわけではなく、特定の場合に出される。なお、メイン基板からのコマンドに基づきサブ基板がATの表示(報知)を行う形態に限定されない。例えばメイン基板が、メイン基板の管理下にある表示器(報知手段)によりATの表示(報知)を行うこともある。以下の説明は、そのような形態についても適用される。
遊技機は、液晶表示装置、スピーカや表示ランプ等からなる演出表示装置を備える。この演出表示装置はサブ基板20により制御され、遊技者に入賞等を報知したり、いわゆるアシストタイム(AT)において、一定ゲーム間に特定の小役を遊技機自体が何らかのアクションを伴ってユーザに教えたりするためのものである。(アシストタイム(AT):特定の小役が当選しても遊技者がこの小役に対応する図柄組合せを入賞判定ライン上に揃えないと払い出しがない。小役による払い出しを確実にするために、ビッグボーナス終了後(もしくは当選時)あるいはその他の任意の契機にアシストタイムを抽選し、これに当選すると一定ゲーム間は特定の小役に対応する図柄組合せを入賞判定ライン上に揃えさせるための停止操作を何らかのアクションを伴って遊技者に教えるという機能)
コマンド受信部20CRは、メイン基板10から受けたコマンドを受信する。例えば、シリアルデータとして受けたコマンドを直列−並列変換器(シフトレジスタ)に入力し、一定のデータ(例えば8ビット)ごとに出力する。この出力されたデータがコマンドとしてサブ基板20のCPUに渡され、解釈・実行される。
次に、メイン基板10における遊技処理について図4を参照して説明を加える。
一般的に、遊技機において、メダルの投入(クレジットの投入)に始まり、払い出しが終了するまで(又はクレジット数の増加が終了するまで)が一遊技である。一遊技が終了するまでは次回の遊技に進めないという決まりがある。
先ず、規定枚数のメダルが投入されることでスタートスイッチ134が有効になり、図4の処理が開始される。
ステップS1において、スタートスイッチ134が操作されることにより、スタートスイッチ134がONとなる。そして、次のステップS2に進む。
ステップS2において、メイン基板10により抽選処理が行われる。そして、次のステップS3に進む。
ステップS3において、第1リール〜第3リールの回転が開始する。そして、次のステップS4に進む。
ステップS4において、ストップボタン140が操作されることにより、ストップボタン140がONとなる。そして、次のステップS5に進む。
ステップS5において、第1リール〜第3リールのうち押下されたストップボタン140に対応するリールについて回転停止処理が行われる。そして、次のステップS6に進む。
ステップS6において、三個のリールに対応するストップボタン140の操作が行われたか否かが判定される。そして、三個のリールに対応する3つのストップボタン140すべての操作が行われたと判定された場合、次のステップS7に進む。
ステップS7において、抽選フラグ成立中に当該抽選フラグに対応する入賞図柄組合せが入賞判定ライン上に揃ったか否か、すなわち、入賞が確定したか否かが判定される。そして、入賞が確定したと判定された場合、次のステップS8に進む。なお、入賞が確定しなかったときは、抽選フラグが成立していてもメダルの払い出しは行われない。
ステップS8において、入賞判定ライン上に揃った入賞図柄組合せに相当するメダルが払い出される。
メダルの投入からステップS8の実行完了までが、一遊技である。ステップS8の待機処理が終了すると、処理はフローチャートの最初に戻る。言い換えれば、次の遊技が可能な状態になる(次遊技へ移行する)。
図5は、メイン基板10及び/又はサブ基板20のハードウエア構成の説明図である。メイン基板10及び/又はサブ基板20は、複数のビット(配線)からなるBUSに、CPU(処理装置)、ROM1及びROM2(不揮発性記憶部、読み出し専用記憶部)、RWM(読み出し及び書き込み可能なメモリ)、タイマ回路TM及びI/O(入出力装置)などが接続されている。なお、ROM1とROM2をひとつのROMとしてもよい。
CPUはプログラムに従い動作する。プログラムにはCPUにより順次読み出されて(例えばメモリの先頭番地から順番にプログラムのコードが読み出されて)実行されるもの(メインループ)と、所定間隔で発生する割込信号によって実行が開始されるもの(割込処理)がある。
タイマ回路TMは、処理部CPUに対して割り込みを一定間隔でかけるものであり、例えば専用のICなどのハードウエアで実現されるが、ソフトウエア(プログラム)で実現するようにしてもよい。I/Oは、例えば通信処理用のICであり、所定のプロトコルにしたがってデータ通信を行う。図示しないレジスタにアドレス及びデータを設定することで、基板等との通信を自動的に行う。当該基板等は、メイン基板10においてはリールユニット203、ホッパ装置121などであり、サブ基板20においては機種固有ブロックBB、下扉ブロックBL、上扉ブロックBUの液晶パネルLCD1、LED202U、モータMU、センサSENUなどである(液晶パネルLCD1等は、それらの制御装置が搭載された基板等を含む)。
CPUは、電源が投入されると、データバスを介してROM1の所定エリアに格納された分周用のデータをタイマ回路TMに送信する。タイマ回路TMは、受信した分周用のデータを基に割り込み時間を決定し、この割り込み時間ごとに、割り込み要求をCPUに送信する。CPUは、この割込み要求を契機に、各センサ等の監視などの割込処理を実行する。例えば、CPUのシステムクロックを8MHz、タイマ回路TMの分周値を1/256、ROMの分周用のデータを47に設定した場合、この割り込みの基準時間は、256×47÷8MHz=1.504msとなる。
RWM(第2記憶部)は、遊技に係る処理に用いるデータを記憶するとともに、ROM2のデータを照合するためのチェックサム計算の「途中の値」を記憶する。
チェックサムとは、誤り検出符号の一つで、データ列(例えばROM2に記憶されている複数のデータ)を整数値の列とみなして和を求め、これをある定数で割った余り(余剰)を検査用データとするものである。最も単純な誤り検出方式の一種で、誤りの検出精度は低いが原理が簡単で容易に実装でき、計算コストも低いため、簡易な誤り検出方式として広く普及している。
チェックサムを用いるとデータの記録が正確に行われているかを調べることができる。記録の前にチェックサムを算出して記憶しておき(例えばROM2のチェックサムをROM1に記憶しておく)、以下に説明するように同じ個所のチェックサムを算出しなおし、両者が一致しなければ、その区間に含まれるデータのいずれかに誤りが生じている(ノイズ等で変化した、あるいは改竄された)ことが分かる。
以下の説明においては、チェックサムを求めることをチェックサム計算又は処理、チェックサム計算又は処理により得られた値をチェックサム値と表記する。
ROM1(第1記憶部)は、CPUに遊技に係る処理を実行させるためのプログラムを記憶する読み出し専用の記憶部である。ROM1は、ROM2のチェックサム値(予め求められた値)及び以下に説明する分割チェックサム処理を行うためのチェックサム処理分割指示テーブル(図9)を記憶している。チェックサム処理分割指示テーブルは、ROM2においてチェックサム計算の対象となる領域を予め複数に分割したもの(分割領域)の情報を、それぞれの分割領域についてチェックサム計算の順番に対応付けて予め記憶したものである。
ROM2(第1記憶部)は、CPUに遊技に係る処理を実行させるためのプログラム及びそのためのデータを記憶する記憶部である。ROM2に記憶されているデータがチェックサム処理の対象である。
ROM1は、遊技に係る処理を実行するためのプログラムとして、メインループのプログラム及びタイマ回路TMの出力に基づき実行が開始される割込処理のプログラムを記憶している。
なお、図5は一例である。例えば、ROM1をチェックサム処理の対象にすることもできる。あるいは、ROM1とROM2を併せてチェックサム処理の対象にすることもできる(この場合、チェックサム値とチェックサム処理分割指示テーブルもチェックサム処理の際に加算される)。
図6はメインループと割込処理の説明図(タイミングチャート)である。メイン基板10及び/又はサブ基板20のCPUはプログラムを順番に読み出してメインループを実行するとともに、タイマ回路TMにより所定間隔で発生される割込信号によって割込処理を実行する。CPUは、割込処理とメインループを交互に実行している。メインループは、CPUが動作を開始して所定の先頭アドレスから命令を読み出して実行する処理である。
CPUは、割込処理とメインループを交互に実行している。割込処理とメインループは、前者が割込信号により所定間隔で繰り返し実行されるのに対し、後者は割込信号に依存しない点で相違するが、プログラムとして異なるものではなく、メインループの処理を割込処理で行うようにすることや、逆に割込処理の処理をメインループで行うようにすることができる。一般的に、割込処理は、いつ信号が発生するかは予め知ることのできないセンサなどから信号を受けて特定の処理を実行するようなプログラムにしばしば用いられる。
図6において、タイマ回路TMの出力の繰り返し周期に着目すると、タイマ回路TMの出力(割込信号)により割込処理が実行され、その後にメインループが実行されている。タイマ回路出力の繰り返し周期が一定(図6の符号Tt)であるとすると、割込処理に要する時間が長くなると、これに応じてメインループに使用できる時間が短くなる。したがって、割込処理とメインループの実行時間(処理負荷)のバランスを考慮しないと、割込処理に時間をとられ、メインループの処理が遅くなるという問題が生じる。加えて、チェックサム処理は、メインループと割込処理のいずれにも影響を与えることなく行う必要がある。
大容量のROMについてチェックサムによる照合を実行するには、CPUに大きな負荷が加わるとともに、その処理に長い時間を要するから、遊技機が稼働中(図6)においては、メインループと割込処理の間の僅かな時間でチェックサム処理を完了できない。そこで、チェックサム処理を、メインループと割込処理の隙間で行うことができる程度にその処理を小さく分割して行うことにし、遊技機が稼動中においてチェックサムによるROMの内容の照合を実行できるようにする。例えば、割込処理の最後に分割チェックサム処理を実行する。
分割チェックサム処理に割くことのできる時間について検討する。図6に示すように、タイマ回路TMの出力間隔をTt、メインループの処理時間をTm(この時間は変動するので図6においてTm1、Tm2のように異なるものとして表記している。以下のTiについても同様)、割込処理の処理時間からチェックサムの計算時間を除いた時間をTi、チェックサムの計算時間をTsとする。なお、Tm、Tiは変動する(Ti1≠Ti2、Tm1≠Tm2)ので、以下に述べる計算にはその平均値、最大値、最小値などを用いる。
Ttは一定であるので、Ti+Ts+Tm≦Ttである。これから、チェックサムの計算時間Tsは式:Ts≦Tt−Tm−Tiを満たす(チェックサム処理の時間は毎回ほぼ同じとする)。言い換えれば、分割チェックサム処理における分割されたチェックサム領域のそれぞれの大きさは、そのチェックサム処理の時間がTs以内となるように選択されている。
図7は、発明の実施の形態に係る分割チェックサム処理の説明図である。この図の例ではチェックサム処理は10個に分割され、そのひとつひとつは割込処理において(例えば図6にようにその最後において)実行される。
図8は、チェックサム処理の対象となるROM(ROM1)の説明図である。このROMは少なくともアドレスA0〜A10のメモリ空間をもち、これらにプログラム及び/又はデータが予め記憶されている。アドレスA0〜A10のデータがチェックサム処理の対象となる。すなわち、アドレスA0〜A10が10分割され、それぞれの分割領域に識別符号D1〜D10が割り当てられている。この順番でチェックサム処理が実行される。すなわち、i=1、2、・・・、10としてひとつのDiについて割込処理において処理が実行される。順番は任意であり、昇順・降順・その他の順番で実行することができる。なお、アドレスA0〜A10の一部が使用されている場合は、その一部のみが対象となる。
分割数、すなわち分割領域は、上述の式:Ts≦Tt−Tm−Tiを満たすように予め設定される。ROMが大容量化しそのメモリ空間が大きくなれば、分割数を多くして分割チェックサム処理が割込処理内で完了できるようにするとともに、各分割領域のサイズをほぼ一定とすることが望ましい。
図9は、チェックサム処理分割指示テーブルの説明図である。チェックサム処理分割指示テーブルは、チェックサム計算の対象となる領域を複数(10個)に分割した分割領域を特定する情報(具体的にはROMのアドレスA0〜A10)を、それぞれの分割領域についてチェックサム計算の順番に対応付けて予め記憶している。図9の例では、分割領域に識別符号D1〜D10を順番1〜10の順に処理することになる。
図10は、発明の実施の形態に係る分割チェックサム処理のフローチャートである。以下、この図を参照して説明を加える。この図の処理は、例えば割込処理の最後に実行される。
S10a:CPUは、チェックサム計算の状態(順番i)が完了しているかどうかを確認する。処理対象であるROMについてチェックサム計算を行い、必要なチェックサムを得た区切りの段階で完了とする。この状態(順番i)はカウンタやフラグの形式で、例えばRWMに記憶されている。完了していないときは次のステップS11に進み、完了しているときはチェックサム計算の状態(順番i)を初期値(=0)に戻し(S10b)、図10の処理を終了する。なお、チェックサム計算を1巡で終わらせる場合には、S10bは行わない。S10bはチェックサム計算を繰り返し行わせる場合に実行する。
S11:CPUは、チェックサム処理分割指示テーブルに基づきチェックサムを計算する。i=1であれば、アドレスA0〜A1のデータを加算し、その結果のデータをRWMの途中の値に加算する。なお、i=1のときは途中の値はリセットされている(S17)ので、加算後の途中の値はアドレスA0〜A1のデータの加算値となる。
S12:S11を所定のアドレス範囲について行う。i=1であれば、アドレスA0〜A1について行う。なお、途中の値への加算のやり方であるが、データを1つずつ加算する、あるいは、アドレスA0〜A1の全部のデータを加算し、その結果を途中の値に加算する、いずれでもよい。
S13:CPUは、S10で確認したチェックサム計算の状態(順番i)が最後か否かに応じて処理を切り替える。最後でなければS14及びS19を実行し、最後であればS15〜S19を実行する。
S14:最後でなければ、S11及びS12で計算したチェックサム値を途中の値として記憶する。なお、図10の例では途中の値がチェックサム値となっているので特に処理は必要ない。そして、チェックサム計算の状態(順番i)を次に進め(S19)、図10の処理を終了する。
S15:最後であれば、S11及びS12で加算された途中の値をチェックサム値としてROM1(チェックサム値記憶部)に予め記憶されたチェックサム値と比較する。
S16:CPUは、S15の比較結果が一致していれば正常と判断し、途中の値をリセット(S17、例えば0に設定)し、チェックサム計算の状態(順番i)を次に進め(S19、順番を最初に戻す)、図10の処理を終了する。一致していなければエラー処理を実行する(S18)。エラー処理は、例えばエラーが発生したことを記憶し、保守モード(遊技機の状態等を点検・管理する特別なモードであって、例えば図示しない保守用の設定変更スイッチをオンにすることによって当該保守モードに移行する)において液晶表示装置にその旨を表示する、エラー発生信号を遊技機の外部(例えばホールコンピュータ等)に出力する、あるいは遊技機の表示装置等で報知する。
発明の実施の形態によれば、大容量のROMについてのチェックサム処理を、その処理負荷が大きくならないように分割しながら行うことで、遊技機が稼動中においてもチェックサム処理を行うことができるようになった。
大容量のROMについてチェックサムによる照合を実行するには、CPUに大きな負荷が加わるとともに、その処理に長い時間を要するため、遊技機の稼働中にチェックサムの照合は不可能であった。本発明の実施の形態によれば、チェックサム処理分割指示テーブルを備え、割込処理においてチェックサム処理を分割して実行するようにしたので、遊技機が稼動中においてもチェックサムによる照合を行うことができ、読み出し専用の第1記憶部(ROM)の内容の変化を迅速に検知することができるようになった。
次に変形例について説明を加える。
上記発明の実施の形態は、分割領域ごとにチェックサム処理を行う、チェックサムの照合は分割領域の全てについて処理を終了後に行っていた。これに限らず、ひとつの分割領域のチェックサム値を求める都度、チェックサムの照合を行うようにしてもよい。
図11は、変形のブロック図である。ROM1は複数の分割領域それぞれについてチェックサム値(分割チェックサム値)を予め記憶している。RWMは、図5で示されていた途中の値を記憶する必要はない。
図12は、チェックサム処理分割指示テーブルと、分割チェックサム値テーブルの関係を示す。それぞれの順番に対応して分割領域のアドレス(情報)と分割チェックサム値が記憶されている。
図13は、変形例に係る分割チェックサム処理のフローチャートである。以下、この図を参照して説明を加える。この図の処理は、例えば割込処理の最後に実行される。
S20a:CPUは、チェックサム計算の状態(順番i)が完了しているかどうかを確認する。処理対象であるROMについてチェックサム計算を行い、必要なチェックサムを得た区切りの段階で完了とする。この状態(順番i)はカウンタやフラグの形式で、例えばRWMに記憶されている。完了していないときは次のステップS21に進み、完了しているときはチェックサム計算の状態(順番i)を初期値(=0)に戻し(S20b)、図13の処理を終了する。なお、チェックサム計算を1巡で終わらせる場合には、S20bは行わない。S20bはチェックサム計算を繰り返し行わせる場合に実行する。
S21:CPUは、チェックサム処理分割指示テーブルに基づきチェックサムを計算する。i=1であれば、アドレスA0〜A1のデータを順次加算する(S22)。
S23:S21及びS22で求めたチェックサム値を、ROM1(チェックサム値記憶部)に予め記憶された分割チェックサム値と比較する。例えば、順番1においてアドレスA0〜A1のデータを加算したときは、その結果をチェックサム値1と比較する。
S24:CPUは、S23の比較結果が一致していれば正常と判断し、チェックサム計算の状態(順番i)を次に進め(S25)、図13の処理を終了する。一致していなければエラー処理を実行する(S26)。
この変形例によれば、大容量のROMについてのチェックサム処理を、その処理負荷が大きくならないように分割しながら行うことで、遊技機が稼動中においてもチェックサム処理を行うことができるようになった。
この変形例によれば、ひとつの分割領域のチェックサム処理を終了する都度、一致不一致の判定を行うので、データにエラーが発生したときに迅速にこれを検知できる(図10の処理では、エラーの発生位置にかかわらず分割領域の全てについて処理を終了してからでないと検知できなかった)。
また、分割領域のどの部分でエラーが発生したかを知ることでき、エラーに関してより詳しい情報を取得できる。例えば、図12の順番5でエラーが発生したとき、アドレスA4〜A5においてデータが変化したと判定することができる。
以上の説明において、遊技機としてスロットマシンを例に挙げ説明を加えたが、これに限らず、本発明の実施の形態は他の遊技機(例えばパチンコ機)にも適用することができる。
本発明は、以上の実施の形態に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
10 メイン基板
20 サブ基板
CPU 中央処理装置
ROM1 読み出し専用記憶部(第1記憶部)
ROM2 読み出し専用記憶部(第1記憶部)
RWM 書き込み読み出し記憶部(第2記憶部)
TM タイマ回路

Claims (3)

  1. 中央処理装置と、読み出し専用の第1記憶部と、書き込みと読み出しが可能な第2記憶部と、予め定められた間隔で信号を出力するタイマ回路とを備え、前記中央処理装置は、メインループのプログラム及び前記タイマ回路の出力に基づき実行が開始される割込処理のプログラムに基づき遊技に係る処理を実行する遊技機において、
    前記中央処理装置は、前記第1記憶部のチェックサムを求めるためのプログラムを含み、
    前記第2記憶部は、チェックサム計算の途中の値を記憶し、
    さらに、
    前記第1記憶部においてチェックサム計算の対象となる領域を予め複数に分割したもの(以下「分割領域」)の情報を、それぞれの分割領域についてチェックサム計算の順番に対応付けて予め記憶するチェックサム処理分割指示テーブルと、
    前記第1記憶部のチェックサム値を予め記憶するチェックサム値記憶部と、を備え、
    前記中央処理装置は、前記割込処理において、
    前記チェックサム計算の順番を確認して当該順番が完了していないときは第2ステップに進み、完了しているときは処理を終了する第1ステップと、
    前記チェックサム処理分割指示テーブルに基づき前記分割領域のいずれかについてチェックサムを計算する第2ステップと、
    前記第2ステップで計算したチェックサム値を前記途中の値に加算する第3ステップと、
    前記チェックサム計算の順番が最後であるとき、前記第3ステップで加算された前記途中の値をチェックサム値として前記チェックサム値記憶部に予め記憶されたチェックサム値と比較する第4ステップと、
    前記第4ステップにおける比較が不一致であるとき、予め定められたエラー処理を行う第5ステップと、
    前記チェックサム計算の順番が最後でないとき、前記チェックサム計算の順番を次に進める第6ステップと、を実行する、ことを特徴とする遊技機。
  2. 中央処理装置と、読み出し専用の第1記憶部と、書き込みと読み出しが可能な第2記憶部と、予め定められた間隔で信号を出力するタイマ回路とを備え、前記中央処理装置は、メインループのプログラム及び前記タイマ回路の出力に基づき実行が開始される割込処理のプログラムに基づき遊技に係る処理を実行する遊技機において、
    前記中央処理装置は、前記第1記憶部のチェックサムを求めるためのプログラムを含み、
    さらに、
    前記第1記憶部においてチェックサム計算の対象となる領域を予め複数に分割したもの(以下「分割領域」)の情報を、それぞれの分割領域についてチェックサム計算の順番に対応付けて予め記憶するチェックサム処理分割指示テーブルと、
    前記第1記憶部の前記分割領域それぞれに対応する複数のチェックサム値(以下「分割チェックサム値」を予め記憶するチェックサム値記憶部と、を備え、
    前記中央処理装置は、前記割込処理において、
    前記チェックサム計算の順番を確認して当該順番が完了していないときは第2ステップに進み、完了しているときは処理を終了する第1ステップと、
    前記チェックサム処理分割指示テーブルに基づき前記分割領域のいずれかについてチェックサムを計算する第2ステップと、
    前記第2ステップで計算したチェックサム値を、前記チェックサム値記憶部の複数の分割チェックサム値のうちで対応するものと比較する第3ステップと、
    前記第3ステップにおける比較が不一致であるとき、予め定められたエラー処理を行う第4ステップと、
    前記チェックサム計算の順番を次に進める第5ステップと、を実行する、ことを特徴とする遊技機。
  3. 前記タイマ回路の出力間隔をTt、前記メインループの処理時間をTm、前記割込処理の処理時間からチェックサムの計算時間を除いた時間をTiとし、
    前記分割領域の大きさは、チェックサムの計算時間Tsが式:Ts≦Tt−Tm−Tiを満たすように定められていることを特徴とする請求項1又は請求項2記載の遊技機。
JP2016078621A 2016-04-11 2016-04-11 遊技機 Pending JP2017189193A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016078621A JP2017189193A (ja) 2016-04-11 2016-04-11 遊技機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016078621A JP2017189193A (ja) 2016-04-11 2016-04-11 遊技機

Publications (1)

Publication Number Publication Date
JP2017189193A true JP2017189193A (ja) 2017-10-19

Family

ID=60085433

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016078621A Pending JP2017189193A (ja) 2016-04-11 2016-04-11 遊技機

Country Status (1)

Country Link
JP (1) JP2017189193A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019110944A (ja) * 2017-12-20 2019-07-11 株式会社ユニバーサルエンターテインメント 遊技機
JP2019110943A (ja) * 2017-12-20 2019-07-11 株式会社ユニバーサルエンターテインメント 遊技機
JP7428275B2 (ja) 2021-11-01 2024-02-06 株式会社三洋物産 遊技機
JP7428274B2 (ja) 2018-01-29 2024-02-06 株式会社三洋物産 遊技機
JP7428276B2 (ja) 2018-01-29 2024-02-06 株式会社三洋物産 遊技機

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019110944A (ja) * 2017-12-20 2019-07-11 株式会社ユニバーサルエンターテインメント 遊技機
JP2019110943A (ja) * 2017-12-20 2019-07-11 株式会社ユニバーサルエンターテインメント 遊技機
JP7428274B2 (ja) 2018-01-29 2024-02-06 株式会社三洋物産 遊技機
JP7428276B2 (ja) 2018-01-29 2024-02-06 株式会社三洋物産 遊技機
JP7428275B2 (ja) 2021-11-01 2024-02-06 株式会社三洋物産 遊技機

Similar Documents

Publication Publication Date Title
JP6402319B2 (ja) 遊技機
JP6773311B2 (ja) 遊技機
JP2017018386A (ja) 遊技機
JP2017189193A (ja) 遊技機
JP2017209192A (ja) 遊技機
JP6268354B2 (ja) 遊技機
JP6502907B2 (ja) 遊技機
JP6417507B2 (ja) 遊技機
JP2018075309A (ja) 遊技機
JP2019201772A (ja) 遊技機
JP6232635B2 (ja) 遊技機
JP5938765B2 (ja) 遊技機
JP6643059B2 (ja) 遊技機
JP6417508B2 (ja) 遊技機
JP6095179B2 (ja) 遊技機
JP6086456B2 (ja) 遊技機
JP6650744B2 (ja) 遊技機
JP5905742B2 (ja) 遊技機
JP6581913B2 (ja) 遊技機
JP6232565B2 (ja) 遊技機
JP2018020029A (ja) 遊技機
JP2018121728A (ja) 遊技機
JP6371961B2 (ja) 遊技機
JP6594253B2 (ja) 遊技機
JP6134893B2 (ja) 遊技機