JP3696362B2 - Control device for electronic game machines - Google Patents

Control device for electronic game machines Download PDF

Info

Publication number
JP3696362B2
JP3696362B2 JP06197497A JP6197497A JP3696362B2 JP 3696362 B2 JP3696362 B2 JP 3696362B2 JP 06197497 A JP06197497 A JP 06197497A JP 6197497 A JP6197497 A JP 6197497A JP 3696362 B2 JP3696362 B2 JP 3696362B2
Authority
JP
Japan
Prior art keywords
rom
cpu
data
command
arithmetic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP06197497A
Other languages
Japanese (ja)
Other versions
JPH10240519A (en
Inventor
佳則 南野
正行 笹井
宏治 池原
Original Assignee
アビリット株式会社
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 アビリット株式会社 filed Critical アビリット株式会社
Priority to JP06197497A priority Critical patent/JP3696362B2/en
Publication of JPH10240519A publication Critical patent/JPH10240519A/en
Application granted granted Critical
Publication of JP3696362B2 publication Critical patent/JP3696362B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Pinball Game Machines (AREA)
  • Slot Machines And Peripheral Devices (AREA)
  • Storage Device Security (AREA)

Description

【0001】
【産業上の利用分野】
この発明は、パチンコホールなどの遊戯場に設置される電子遊戯機に導入される技術であって、殊にこの種電子遊戯機のゲーム動作を制御するための電子遊戯機用制御装置に関連する。
【0002】
【従来の技術】
パチンコホールには、パチンコ遊戯機やスロットマシンなどの電子遊戯機が複数台配備されている。これらの電子遊戯機には、電子回路部品が実装された制御基板が組み込まれており、遊戯機の動作が一連に制御される。
【0003】
ところで、この種の風俗営業機種の電子遊戯機の制御は法規制に基づいて行う必要があり、各遊戯機メーカーは、遊戯機を実際に動作させるための制御プログラムや入賞確率などの固定データをこの法規制に従って作成して、ROMに記憶させている。前記制御基板には、このROMを内蔵するチップ部品(以下これを「ROMチップ部品」という)や、制御主体となるCPUを含むチップ部品(以下これを「CPUチップ部品」という)などが実装され、検査を経た後、ケース内に封入されて機体内に組み込まれる。
【0004】
こうして完成した遊戯機は、パチンコホールなどに納入されるが、この納入後に、封印を破り、前記ROMチップ部品を不正な内容のプログラムが書き込まれた部品と差し替えるという違法行為が行われる虞がある。
【0005】
このような違法行為を摘発するためには、各遊戯機毎に、機体内の制御基板の封印をチェックする必要があり、多大な労力と時間とを要する。また違法行為が行われているという疑いがなければ、納入後の制御基板のチェックを行うことは難しく、違法行為を完全に防止することは、事実上不可能である。
【0006】
この問題を解決するために、特開平8−238375号公報に示されるように、制御装置内に、ROM内の制御プログラムが適正であるか否かをチェックする機能を具備させることが提案されている。
この方法は、具体的には、あらかじめ適正な制御プログラムを所定のフォーマットにより変換して得られるセキュリティコードを制御装置内に登録しておき、ROM内から制御プログラムを読み出してこの変換フォーマットにより変換し、得られたコード情報と登録されたセキュリティコードとを照合するというものである。
【0007】
【発明が解決しようとする課題】
上記のようにROM内の制御プログラムを用いてROMの適否を判別する場合、プログラムの読出しやコード情報の生成作業のための処理時間を確保する必要がある。しかしながら瞬時のゲーム判定が必要なパチンコゲームやスロットゲームにおいては、この処理時間は致命的な遅延時間となり、ゲーム中に判別処理を行うのは事実上不可能である。このため現状の遊戯機では、装置の電源立ち上げ時やリセット時にのみ照合処理を行うように設定されている。
【0008】
ところが近年、この照合処理をくぐりぬけて不正を行うために、本来のROMチップ部品を基板上に保持したまま、別の不正なROMチップを実装し、正規のROMに対する照合処理が終了した後に、プログラムの読出し先を不正なROM側に切り替えるように変造された制御基板が出回っている。このため遊戯機の製造メーカー側では、ゲーム動作中にもROMの適否をチェックする方法を早急に開発する必要に迫られている。
【0009】
この発明は上記問題点に着目してなされたもので、ゲーム制御を実行している間でも、その制御を遅延させることなくROMの適否を判別できるようにすることにより、プログラムの読み出し先を不正なROMに切り替えるような不正行為を摘出できるようにすることを、技術課題とする。
【0010】
【課題を解決するための手段】
上記課題を解決するために、請求項1の発明では、ゲーム制御用のプログラムを記憶するためのROMが埋設されたROMチップ部品と、前記ROM内のプログラムを読み出して実行するCPUが埋設されたCPUチップ部品とを具備して成る電子遊戯機用制御装置において、前記CPUを、コマンドを解読する間に作業用メモリに対するリフレッシュを実行する機能を有するものにするとともに、リフレッシュ処理を必要としないスタティック型の作業用メモリおよび前記ROMチップ部品に接続する。また前記ROMチップ部品には、前記ROMとCPUとの間でやりとりされるデータを取り込んで、その取り込んだデータを用いた演算によりセキュリティコードを生成する演算回路を埋設する。
前記CPUは、前記演算回路が前記演算のために取り込んだデータと同一のデータを用いた演算により前記セキュリティコードに整合するコード情報を生成するとともに、前記ROMからコマンドが入力されたとき、このコマンドを解読している間に、前記作業用メモリに対するリフレッシュ処理に代えて、前記演算回路から前記セキュリティコードを取り込んでそのコード情報と自回路で生成されたコード情報とを照合する処理を実行し、その照合により前記セキュリティーコードと前記コード情報とが不整合であると判別したとき、前記解読したコマンドを実行しないようにする。
【0011】
請求項2の発明では、前記演算回路は、前記ROMからCPUへのデータ入力経路に接続されており、前記ROMからCPUにデータが入力される都度、その入力データを用いて前記演算を実行する。
【0012】
【作用】
一連のゲーム制御を行う際には、まずCPUよりROMにアドレス信号が出力されてROM内の参照すべきアドレスが指定される。この指定を受けたROMは、該当するアドレスに格納されたデータをCPUに出力する。このようにCPUとROMとの間でやりとりされるアドレスの指定データやプログラムデータを順次取り込んで、所定の演算規則に基づく演算を実行すると、あるコード情報を生成することができる。
【0013】
この発明では、ROMチップ部品の内部に演算回路を埋設し、この演算回路に上記の演算処理によりセキュリティコードを生成させるとともに、CPU側でもこの演算回路が使用するのと同一のデータを用いた演算を実行してセキュリティコードに整合するコード情報を生成する。
【0014】
前記CPUは、コマンドを解読する間に作業用メモリに対するリフレッシュを実行する機能を有するものであるが、作業用メモリとしてスタティック型のメモリが使用されるため、リフレッシュ処理を実行する代わりに、前記演算回路からセキュリティコードを取り込んでそのコード情報を自回路で生成したコード情報と照合することが可能になる。この照合処理は、ROMからコマンドが入力される毎に実行されるので、ゲーム制御中に照合処理を繰り返し実行することが可能になる。しかも、リフレッシュ処理のための時間を利用して照合処理を行うので、照合処理を行っても遊戯機のゲーム動作が遅延することがない。
【0015】
【実施例】
図1は、この発明にかかる電子遊戯機用制御装置が適用されたスロットマシンの外観を示す。
このスロットマシン1の機体は、ボックス形状の機体本体部の前面に扉部2を開閉可能に取り付けて構成されており、前記扉部2の前面には、リール表示窓3,メダル投入口4,始動レバー5,3個の停止釦スイッチ6a,6b,6c,メダル放出口7,メダル受皿8などが設けられている。
【0016】
リール表示窓3には、上,中,下,斜めの合計5本の停止ラインL1 〜L5 が表されており、メダルの投入枚数が1枚であれば中央の停止ラインL1 のみが、2枚であれば上,中,下の3本の停止ラインL1 〜L3 が、3枚であればすべての停止ラインL1 〜L5 が、それぞれ有効化される。
【0017】
前記機体本体部の内部には、リール表示窓3の位置にあわせて、3個のリール9a,9b,9cが組み込まれている。各リール9a,9b,9cの周面にはそれぞれ複数の図柄が描かれており、リール停止時には、各リール9a,9b,9cの3駒分の図柄が、各停止ラインL1 〜L5 上に整列して並ぶようになっている。
【0018】
前記メダル投入口4よりメダルが投入されると、その投入枚数に応じた数の停止ラインが有効化され、ついで始動レバー5が操作されると3個のリール9a,9b,9cが一斉に始動する。この後停止釦スイッチ6a,6b,6cが操作される都度、それぞれ対応するリール9a,9b,9cが個別に停止する。このとき有効化されたライン上に、所定の図柄の組み合わせが成立していると、装置内部のホッパ(図示せず)が作動して、所定枚数のメダルがメダル放出口7よりメダル受皿8へと放出される。
【0019】
図2は、前記スロットマシン1の基本的な電気構成を示す。
図中、10は、この発明にかかる電子遊戯機用制御装置であって(以下単に「制御装置10」という)、制御主体となるCPU11,データの読み書きに用いられるRAM12,ゲーム実行用の制御プログラムや各リールの図柄配列,入賞確率などを記憶するROM13などにより構成される。
【0020】
なお上記制御装置10のうち、CPU11とRAM12とは、1つのパッケージ内に収容されたCPUチップ部品14として構成される。一方、ROM13は、モデルチェンジなどに対応できるように、単独のチップ部品として構成され、前記CPUチップ部品14と同じ制御基板上に実装される。
【0021】
前記制御装置10にはバス19を介して前記始動レバー5,停止釦スイッチ6a,6b,6cなどの入力部,各リール9a,9b,9cを駆動するためのリール駆動部15,前記ホッパを駆動するためのホッパ駆動部16などが接続される。CPU11は、各スイッチからの操作信号に基づき、リール駆動部16に制御信号を出力して各リール9a,9b,9cの始動や停止動作を実現する。またCPU11は、各リール毎に、そのリールの駆動タイミングとROM13内に記憶された図柄配列データとを用いて有効ライン上に位置する図柄を認識しており、全リールが停止して有効ライン上に入賞にかかる図柄の組合せが成立したと判別したとき、ホッパ駆動部16を駆動して所定枚数のメダルを放出させる。
【0022】
この実施例の制御装置10では、CPU11としてZ80系などダイナミックRAM(DRAM)へのリフレッシュ機能を有するタイプのものを用いる一方、RAM12としてリフレッシュ処理を必要としないスタティック型のメモリを採用して、CPU11のリフレッシュ処理を行うための処理時間を外部に対する処理を行わない空き時間に設定している。さらに前記CPU11には、この空き時間内に前記ROM13の適否判別を行う機能が設定され、通常のゲーム制御中におけるコマンド解読中にこの判別処理が実施される。
【0023】
図3は、前記CPU11とROM13の詳細な構成、および両者の関係を示すもので、以下、同図を用いて前記判別処理の詳細を説明する。
前記ROM13は、プログラムやデータを記憶するためのROM本体17のほか、後記する演算処理を行うための演算回路18を、それぞれ個別の集積回路として形成し、同一パッケージ内に埋設して成るものである。
【0024】
前記演算回路18は、ROM本体17とCPU11との間をつなぐデータバス20に接続されており、ROM本体17からデータが出力される都度、その出力データDTを取り込んで、例えば、そのデータDTの示す数値を順次積算処理するなど、所定の演算を実行する。
【0025】
前記出力データDTは、CPU11からアドレスバス21を介して与えられる参照アドレスデータADRに基づき出力されるもので、このデータDTはCPU11内部の制御部22に与えられて、その内容に応じた処理が実行される。
【0026】
CPU11の演算部23は、前記制御部22の指令に応じて通常の演算動作を実行するほか、データDTが入力される都度、前記制御部22を介してこのデータを受け取り、前記演算回路18と同様の演算を実行する。
またこのデータDTがコマンドを示すものであった場合、制御部22がこのコマンドを解読している間は、外部に対する処理がなさないリフレッシュ期間となるので、この間に演算部23は、ROM13側の演算回路18に読出し信号を出力してその演算結果SCを取り込み、このSCの値を自己の演算結果SC´と照合する。この照合結果は解読処理後の制御部22に与えられ、制御部22は、この照合結果により解読したコマンドを実行するか否かを決定する。
【0027】
なおこの実施例では、ROM13からCPU11に入力されるデータDTのみを用いて演算を実行しているが、これに限らず、CPU11からROM13に出力される参照アドレスデータADRを上記演算処理対象に組み込んでも良い。
また前記演算回路18を、通常部品メーカー側がメーカーコードやデバイスコートなどのコード情報をロジック形成するフォーマットエリアに形成すれば、演算ロジックの解読はより困難となり、ROM本体17のプログラムチェックにかかるセキュリティをさらに向上させることができる。
【0028】
図4は、前記CPU11によるROMの適否チェックにかかる制御手順を示す。なお図中cは、前記照合処理により各演算結果が合致しなかった回数を計数するためのカウンタであって、初期状態では「0」にセットされ、CPU内部のレジスタなどに格納される。
まず装置に電源が投入されると、ステップ1で、CPU11の制御部22は、内部のレジスタや前記RAM12をリセットした後、ROM13に対し、参照アドレスデータADRを出力してデータ読出し先のアドレスを指定する(初期状態では0番地が指定される)。これを受けてROM本体17内の該当するアドレスのデータDTがCPU11に入力されると、制御部22は、このデータDTが数値などの固定データを示すものか、コマンドを示すものかをチェックする(ステップ2,3)。
【0029】
入力されたデータDTがコマンド以外のデータであれば、ステップ4が「NO」となってステップ5へと移行し、前記演算部23において、このデータDTを用いた演算処理が実行される。
このときROM13内の演算回路18でも、同様に、データDTを用いた演算が実行されており、このステップ2〜5の処理が複数サイクル繰り返されることにより、CPU11,ROM13の双方で、所定のコード情報が生成される。
【0030】
ある時点でROM13から入力されたデータDTがコマンドを表すものであったとき、前記制御部22はこのコマンドの解読作業に入る。これと同時に、前記演算部23は、演算回路18の演算結果を取り込んで自己の演算結果SC′との照合処理を実行する(ステップ6)。
【0031】
コマンドの解読が終了すると、CPU11の制御部22は、前記照合処理をチェックする。この結果、演算結果SCとSC′とが合致していれば、ステップ7が「YES」となってステップ11へと移行し、制御部22は、解読したコマンドに基づく処理を行った後、ステップ2へと戻る。
以後、ROM13を構成するチップ部品が適正なものである限り、上記の処理が繰り返し実行されるもので、CPU11は前記ROM13が適正であることを確認しながら、そのプログラムを実行することになる。
【0032】
一方、汎用のROMチップ部品に不正なプログラムを記憶させて前記ROM13を構成するチップ部品と差し替えた場合、この不正部品は演算回路18を具備していないから、CPU11はROM13側からの演算結果を得られなくなる。また制御基板上に別のROMチップ部品を実装し、装置の動作途中でプログラムの読出し先を正規のROM13から不正なROM側に切り替えた場合、演算回路18側の演算結果SCと演算部23の演算結果SC′は合致しなくなる。したがってこれらの不正が行われた場合には、ステップ7の判定は「NO」となってステップ8へと移行し、前記カウンタcがインクリメントされる。
【0033】
つぎのステップ9で、制御部22は、このカウンタcの計数値が所定のしきい値THを越えたか否か、すなわち各演算結果が合致しないという事象がしきい値THを越える回数だけ発生したか否かを判別するもので、このステップ9が「YES」となると、制御部22は、つぎのステップ10で前記解読したコマンドの実行を中止する。これにより以後、機体は動作不能な状態に設定され、不正なプログラムの続行は不可能となる。
なお上記ステップ8,9の手順をおかずに、一度演算結果の不整合が生じたら直ちに装置の動作を停止するようにしてもよい。
【0034】
このようにCPU11の通常動作時に、CPU11,ROM13の双方で、両者間でやりとりされるデータを用いた演算を行うとともに、CPU11が外部に対する処理を行っていないわずかな空き時間内に、各演算結果を照合してROM13の適否を判別できるので、ゲーム制御の処理タイミングを遅延することなく、装置作動中に繰り返し判別処理を実行することができる。しかも、ROM13を構成するチップ部品が不正なものに差し替えられ、または動作途中でプログラムの読出し先が切り替えられた場合、その不正行為が直ちに判別できるので、セキュリティは大幅に向上する。
また装置の電源立上げ時やリセット時など装置の起動とともに照合動作が実行されるので、従来のようにROM内のプログラムからセキュリティコードを生成するためのアルゴリズムを用意する必要がない。
【0035】
なお演算結果の照合動作を実施する時間帯は、前記したリフレッシュ期間内に限らず、CPUが外部に対して処理を行っていない他の空き時間を利用してもよい。また近年開発されている複数の処理を並列して実行できるパイプラインを具備するCPUを導入して、いずれか1本のラインをROMチップ部品の照合処理専用に設定するようにしてもよい。
【0036】
【発明の効果】
この発明では、CPUとROMとの間でやりとりされるデータを用いた演算によりセキュリティコードを生成する演算回路をROMチップ部品内に埋設するとともに、CPU側でも前記セキュリティコードに整合するコード情報を生成した。また、コマンドを解読する間に作業用メモリに対するリフレッシュを実行する機能を有するCPUと、リフレッシュ処理を必要としないスタティック型の作業用メモリを使用し、前記作業用メモリに対するリフレッシュ処理に代えてセキュリティコードを照合する処理を実行するようにしたので、ゲーム制御を実行している間に繰り返しセキュリティコードの照合処理を行うことができる。しかも、リフレッシュ処理のための時間を使用することにより、照合処理のためにゲーム制御の処理タイミングを遅延させることがないから、通常のゲーム制御が行われている際にもROMチップ部品の適否を簡単に判別することが可能になる。また上記の照合結果が不整合であるときには解読したコマンドを実行しないようにしたから、不正なプログラムに差し替えられた場合には、速やかにそのプログラムの実行を中止することができ、遊戯機のセキュリティを大幅に向上することができる。
【図面の簡単な説明】
【図1】この発明の電子遊戯機用制御装置が適用されたスロットマシンの概略構成を示す正面図である。
【図2】図1のスロットマシンの電気的構成を示すブロック図である。
【図3】CPUとROMとの詳細な構成および両者の関係を示すブロック図である。
【図4】ROMの適否チェックにかかる制御手順を示すフローチャートである。
【符号の説明】
10 電子遊戯機用制御装置
11 CPU
13 ROM
17 ROM本体
18 演算回路
22 制御部
23 演算部
[0001]
[Industrial application fields]
The present invention is a technique introduced to an electronic game machine installed in a playground such as a pachinko hall, and particularly relates to a control device for an electronic game machine for controlling the game operation of this type of electronic game machine. .
[0002]
[Prior art]
In the pachinko hall, there are a number of electronic game machines such as pachinko machines and slot machines. These electronic game machines incorporate a control board on which electronic circuit components are mounted, and the operation of the game machine is controlled in series.
[0003]
By the way, it is necessary to control electronic game machines of this type of customs business model based on laws and regulations, and each game machine manufacturer provides fixed data such as a control program for actually operating the game machine and a winning probability. It is created according to this regulation and stored in ROM. On the control board, a chip component (hereinafter referred to as “ROM chip component”) incorporating the ROM, a chip component including a CPU serving as a control body (hereinafter referred to as “CPU chip component”), and the like are mounted. After the inspection, it is enclosed in a case and incorporated into the aircraft.
[0004]
The completed game machine is delivered to a pachinko hall or the like, but after this delivery, there is a risk of illegal acts of breaking the seal and replacing the ROM chip part with a part written with an illegal program. .
[0005]
In order to detect such illegal activities, it is necessary to check the sealing of the control board in the machine for each game machine, which requires a great deal of labor and time. If there is no suspicion that illegal activities are being conducted, it is difficult to check the control board after delivery, and it is virtually impossible to completely prevent illegal activities.
[0006]
In order to solve this problem, as disclosed in Japanese Patent Laid-Open No. 8-238375, it has been proposed to provide a control device with a function for checking whether or not the control program in the ROM is appropriate. Yes.
Specifically, in this method, a security code obtained by converting an appropriate control program in a predetermined format is registered in the control device in advance, and the control program is read from the ROM and converted by this conversion format. The obtained code information is collated with the registered security code.
[0007]
[Problems to be solved by the invention]
As described above, when determining the suitability of the ROM using the control program in the ROM, it is necessary to secure a processing time for reading the program and generating code information. However, in a pachinko game or slot game that requires instantaneous game determination, this processing time becomes a fatal delay time, and it is virtually impossible to perform the determination processing during the game. For this reason, the current game machine is set so that the verification process is performed only when the apparatus is turned on or reset.
[0008]
However, in recent years, in order to bypass this verification process and carry out fraud, the program is performed after another illegal ROM chip is mounted while the original ROM chip component is held on the board, and the verification process for the regular ROM is completed. Control boards that have been altered so as to switch the reading destination to the illegal ROM side are on the market. For this reason, game machine manufacturers are required to develop a method for checking the suitability of ROMs even during game operations.
[0009]
The present invention has been made paying attention to the above-mentioned problems, and even when game control is being executed, by making it possible to determine the suitability of ROM without delaying the control, the program read destination is illegal. It is a technical problem to be able to extract fraudulent acts such as switching to a ROM .
[0010]
[Means for Solving the Problems]
In order to solve the above-mentioned problem, in the invention of claim 1, a ROM chip component in which a ROM for storing a game control program is embedded and a CPU for reading and executing the program in the ROM are embedded. In a control device for an electronic game machine comprising a CPU chip part, the CPU has a function of executing a refresh on a working memory while decoding a command, and does not require a refresh process. Connect to the working memory of the mold and the ROM chip component. The ROM chip component is embedded with an arithmetic circuit that captures data exchanged between the ROM and the CPU and generates a security code by an operation using the acquired data.
The CPU generates code information that matches the security code by an operation using the same data as the data fetched for the operation by the arithmetic circuit, and when the command is input from the ROM, the command , In place of the refresh process for the working memory, to execute the process of fetching the security code from the arithmetic circuit and collating the code information with the code information generated by the own circuit, When it is determined that the security code and the code information are inconsistent by the collation, the decoded command is not executed.
[0011]
According to a second aspect of the present invention, the arithmetic circuit is connected to a data input path from the ROM to the CPU, and executes the calculation using the input data every time data is input from the ROM to the CPU. .
[0012]
[Action]
When performing a series of game controls, an address signal is first output from the CPU to the ROM, and an address to be referenced in the ROM is designated. Receiving this designation, the ROM outputs the data stored at the corresponding address to the CPU. As described above, when the address designation data and the program data exchanged between the CPU and the ROM are sequentially fetched and a calculation based on a predetermined calculation rule is executed, certain code information can be generated.
[0013]
In the present invention, an arithmetic circuit is embedded in the ROM chip component, the security circuit is generated by the arithmetic processing described above, and the CPU uses the same data as the arithmetic circuit uses. To generate code information that matches the security code.
[0014]
The CPU has a function of executing refresh on the work memory while decoding the command. However, since a static memory is used as the work memory, the calculation is performed instead of executing the refresh process. It is possible to retrieve the security code from the circuit and collate the code information with the code information generated by the own circuit. Since this collation process is executed every time a command is input from the ROM, the collation process can be repeatedly executed during game control. In addition, since the verification process is performed using the time for the refresh process, the game operation of the game machine is not delayed even if the verification process is performed.
[0015]
【Example】
FIG. 1 shows the appearance of a slot machine to which a control device for an electronic game machine according to the present invention is applied.
The machine body of the slot machine 1 is configured such that a door portion 2 is attached to the front surface of a box-shaped airframe main body portion so that the door portion 2 can be opened and closed, and a reel display window 3, a medal slot 4, A start lever 5, three stop button switches 6a, 6b, 6c, a medal discharge port 7, a medal tray 8, and the like are provided.
[0016]
The reel display window 3 displays a total of five stop lines L 1 to L 5 , up, middle, down, and diagonal. If the number of inserted medals is one, only the center stop line L 1 is displayed. If there are two, the upper, middle, and lower three stop lines L 1 to L 3 are activated, and if there are three, all the stop lines L 1 to L 5 are activated.
[0017]
Three reels 9a, 9b, and 9c are incorporated in the body main body in accordance with the position of the reel display window 3. Reels 9a, 9b, and each of the peripheral surface of 9c are drawn plurality of symbols, at the time of reel stop the reels 9a, 9b, 3 frame of symbols of 9c is, each stop line L 1 ~L 5 above It is arranged in line with.
[0018]
When medals are inserted from the medal insertion slot 4, the number of stop lines corresponding to the number of inserted medals is activated, and when the start lever 5 is operated, the three reels 9a, 9b, 9c are started all at once. To do. Thereafter, each time the stop button switches 6a, 6b, 6c are operated, the corresponding reels 9a, 9b, 9c are individually stopped. If a predetermined symbol combination is established on the activated line at this time, a hopper (not shown) inside the apparatus is operated, and a predetermined number of medals are transferred from the medal discharge port 7 to the medal tray 8. And released.
[0019]
FIG. 2 shows a basic electrical configuration of the slot machine 1.
In the figure, reference numeral 10 denotes a control device for an electronic game machine according to the present invention (hereinafter simply referred to as “control device 10”), which is a CPU 11 which is a control body, a RAM 12 which is used for reading and writing data, and a control program for game execution. And a ROM 13 for storing a symbol arrangement of each reel, a winning probability, and the like.
[0020]
Of the control device 10, the CPU 11 and the RAM 12 are configured as CPU chip components 14 housed in one package. On the other hand, the ROM 13 is configured as a single chip component so as to be able to cope with a model change, and is mounted on the same control board as the CPU chip component 14.
[0021]
The control device 10 drives an input unit such as the start lever 5, stop button switches 6a, 6b, 6c, a reel driving unit 15 for driving the reels 9a, 9b, 9c, and the hopper via a bus 19. A hopper drive unit 16 and the like are connected. The CPU 11 outputs a control signal to the reel drive unit 16 based on the operation signal from each switch, thereby realizing the start and stop operation of each reel 9a, 9b, 9c. Further, the CPU 11 recognizes a symbol located on the effective line for each reel by using the driving timing of the reel and the symbol arrangement data stored in the ROM 13, and all the reels stop and are on the effective line. When it is determined that the winning combination of symbols is established, the hopper driving unit 16 is driven to release a predetermined number of medals.
[0022]
In the control device 10 of this embodiment, a CPU having a refresh function for a dynamic RAM (DRAM) such as a Z80 system is used as the CPU 11, while a static memory that does not require refresh processing is adopted as the RAM 12. The processing time for performing the refresh process is set to a free time during which no external processing is performed. Further, the CPU 11 is set with a function for determining the suitability of the ROM 13 within this idle time, and this determination process is performed during command decoding during normal game control.
[0023]
FIG. 3 shows the detailed configuration of the CPU 11 and the ROM 13 and the relationship between them. Hereinafter, the details of the discrimination processing will be described with reference to FIG.
The ROM 13 includes a ROM main body 17 for storing programs and data, and arithmetic circuits 18 for performing arithmetic processing described later as individual integrated circuits, which are embedded in the same package. is there.
[0024]
The arithmetic circuit 18 is connected to a data bus 20 that connects between the ROM main body 17 and the CPU 11, and takes in the output data DT each time data is output from the ROM main body 17. Predetermined calculations are performed such as sequentially integrating the numerical values shown.
[0025]
The output data DT is output based on the reference address data ADR given from the CPU 11 via the address bus 21, and this data DT is given to the control unit 22 in the CPU 11, and processing according to the contents is performed. Executed.
[0026]
The calculation unit 23 of the CPU 11 performs normal calculation operation in response to a command from the control unit 22 and receives this data via the control unit 22 every time data DT is input. A similar operation is performed.
If the data DT indicates a command, a refresh period during which no external processing is performed while the control unit 22 decodes the command causes the arithmetic unit 23 to store the data on the ROM 13 side. The readout signal is output to the arithmetic circuit 18 to fetch the arithmetic result SC, and the value of this SC is collated with its own arithmetic result SC ′. The collation result is given to the control unit 22 after the decoding process, and the control unit 22 determines whether or not to execute the command decoded based on the collation result.
[0027]
In this embodiment, the calculation is executed using only the data DT input from the ROM 13 to the CPU 11. However, the present invention is not limited to this, and the reference address data ADR output from the CPU 11 to the ROM 13 is incorporated in the calculation processing target. But it ’s okay.
Further, if the arithmetic circuit 18 is formed in a format area in which code information such as a manufacturer code or a device code is normally formed by the component manufacturer, it becomes more difficult to decode the arithmetic logic, and security for the program check of the ROM main body 17 is increased. Further improvement can be achieved.
[0028]
FIG. 4 shows a control procedure for checking the suitability of the ROM by the CPU 11. Note that c in the figure is a counter for counting the number of times each calculation result does not match by the collation process, and is set to “0” in the initial state and stored in a register in the CPU.
First, when the apparatus is turned on, in step 1, the control unit 22 of the CPU 11 resets the internal register and the RAM 12, and then outputs the reference address data ADR to the ROM 13 to set the address of the data reading destination. Specify (address 0 is specified in the initial state). In response to this, when the data DT at the corresponding address in the ROM main body 17 is input to the CPU 11, the control unit 22 checks whether the data DT indicates fixed data such as a numerical value or a command. (Steps 2 and 3).
[0029]
If the input data DT is data other than the command, step 4 becomes “NO” and the process proceeds to step 5, and the arithmetic unit 23 executes arithmetic processing using the data DT.
At this time, the arithmetic circuit 18 in the ROM 13 similarly performs an operation using the data DT. By repeating the processes in steps 2 to 5 for a plurality of cycles, both the CPU 11 and the ROM 13 have a predetermined code. Information is generated.
[0030]
When the data DT input from the ROM 13 at a certain point in time represents a command, the control unit 22 starts to decode this command. At the same time, the calculation unit 23 fetches the calculation result of the calculation circuit 18 and executes a collation process with its own calculation result SC ′ (step 6).
[0031]
When the decoding of the command ends, the control unit 22 of the CPU 11 checks the collation process. As a result, if the calculation results SC and SC ′ match, step 7 becomes “YES”, the process proceeds to step 11, and the control unit 22 performs a process based on the decoded command, Return to 2.
Thereafter, as long as the chip components constituting the ROM 13 are appropriate, the above processing is repeatedly executed, and the CPU 11 executes the program while confirming that the ROM 13 is appropriate.
[0032]
On the other hand, when an illegal program is stored in a general-purpose ROM chip part and replaced with the chip part constituting the ROM 13, the illegal part does not include the arithmetic circuit 18, so the CPU 11 displays the calculation result from the ROM 13 side. It can no longer be obtained. Further, when another ROM chip component is mounted on the control board and the program reading destination is switched from the regular ROM 13 to the illegal ROM side during the operation of the apparatus, the calculation result SC of the calculation circuit 18 side and the calculation unit 23 The calculation result SC ′ does not match. Therefore, if these frauds are made, the determination in step 7 is “NO”, the process proceeds to step 8, and the counter c is incremented.
[0033]
In the next step 9, the control unit 22 has occurred for the number of times that the count value of the counter c has exceeded a predetermined threshold value TH, that is, the event that the result of each operation does not match exceeds the threshold value TH. If this step 9 is “YES”, the control unit 22 stops the execution of the decoded command in the next step 10. As a result, the aircraft is set in an inoperable state thereafter, and the illegal program cannot be continued.
It should be noted that the operation of the apparatus may be stopped immediately after the calculation results are inconsistent once without performing steps 8 and 9 above.
[0034]
As described above, during the normal operation of the CPU 11, both the CPU 11 and the ROM 13 perform calculations using data exchanged between them, and the calculation results are obtained within a short time when the CPU 11 is not performing external processing. Therefore, it is possible to determine whether the ROM 13 is appropriate or not, so that the determination process can be repeatedly executed during the operation of the apparatus without delaying the process timing of the game control. In addition, when the chip parts constituting the ROM 13 are replaced with illegal ones, or when the program reading destination is switched during the operation, the illegal act can be immediately determined, so that the security is greatly improved.
In addition, since the collation operation is executed when the apparatus is started up, such as when the apparatus is turned on or reset, it is not necessary to prepare an algorithm for generating a security code from a program in the ROM as in the prior art.
[0035]
Note that the time period during which the operation result comparison operation is performed is not limited to the refresh period described above, and other idle time during which the CPU is not processing externally may be used. In addition, a CPU having a pipeline capable of executing a plurality of processes developed in recent years may be introduced, and any one line may be set exclusively for ROM chip component verification processing.
[0036]
【The invention's effect】
In the present invention, an arithmetic circuit that generates a security code by an operation using data exchanged between the CPU and the ROM is embedded in the ROM chip part, and the CPU also generates code information that matches the security code. did. In addition, a CPU having a function of refreshing the work memory while decoding the command and a static work memory that does not require a refresh process are used, and a security code is used instead of the refresh process for the work memory. Since the process for verifying the security code is executed, the security code verification process can be repeatedly performed while the game control is being executed. Moreover, by using the time for the refresh process, the processing timing of the game control is not delayed for the collation process. Therefore, the suitability of the ROM chip parts can be checked even during normal game control. it is possible to easily determine the ing. In addition, since the decrypted command is not executed when the above verification result is inconsistent, the execution of the program can be stopped promptly if it is replaced with an illegal program, and the security of the game machine Can be greatly improved.
[Brief description of the drawings]
FIG. 1 is a front view showing a schematic configuration of a slot machine to which an electronic game machine control device of the present invention is applied.
2 is a block diagram showing an electrical configuration of the slot machine of FIG. 1. FIG.
FIG. 3 is a block diagram illustrating a detailed configuration of a CPU and a ROM and a relationship between the two.
FIG. 4 is a flowchart showing a control procedure for checking the suitability of ROM.
[Explanation of symbols]
10 Electronic game machine controller 11 CPU
13 ROM
17 ROM main body 18 arithmetic circuit 22 control part 23 arithmetic part

Claims (2)

ゲーム制御用のプログラムを記憶するためのROMが埋設されたROMチップ部品と、前記ROM内のプログラムを読み出して実行するCPUが埋設されたCPUチップ部品とを具備して成り、
前記CPUは、コマンドを解読する間に作業用メモリに対するリフレッシュを実行する機能を有するとともに、リフレッシュ処理を必要としないスタティック型の作業用メモリおよび前記ROMチップ部品に接続されており、
前記ROMチップ部品には、前記ROMとCPUとの間でやりとりされるデータを取り込んで、その取り込んだデータを用いた演算によりセキュリティコードを生成する演算回路が埋設されており、
前記CPUは、前記演算回路が前記演算のために取り込んだデータと同一のデータを用いた演算により前記セキュリティコードに整合するコード情報を生成するとともに、前記ROMからコマンドが入力されたとき、このコマンドを解読している間に、前記作業用メモリに対するリフレッシュ処理に代えて、前記演算回路から前記セキュリティコードを取り込んでそのコード情報と自回路で生成されたコード情報とを照合する処理を実行し、その照合により前記セキュリティーコードと前記コード情報とが不整合であると判別したとき、前記解読したコマンドを実行しないことを特徴とする電子遊戯機用制御装置。
A ROM chip component in which a ROM for storing a game control program is embedded, and a CPU chip component in which a CPU for reading and executing a program in the ROM is embedded;
The CPU has a function of executing refresh for the work memory while decoding a command, and is connected to a static work memory that does not require a refresh process and the ROM chip component,
In the ROM chip component, an arithmetic circuit that captures data exchanged between the ROM and the CPU and generates a security code by an arithmetic operation using the captured data is embedded,
The CPU generates code information that matches the security code by an operation using the same data as the data fetched for the operation by the arithmetic circuit, and when the command is input from the ROM, the command , In place of the refresh process for the working memory, to execute the process of fetching the security code from the arithmetic circuit and collating the code information with the code information generated by the own circuit, An electronic game machine control device characterized in that when the security code and the code information are determined to be inconsistent by the collation, the decoded command is not executed .
前記演算回路は、前記ROMからCPUへのデータ入力経路に接続されており、前記ROMからCPUにデータが入力される都度、その入力データを用いて前記演算を実行する請求項1に記載された電子遊戯機用制御装置。 The arithmetic circuit is connected to a data input path from the ROM to the CPU, and each time data is input from the ROM to the CPU, the arithmetic is performed using the input data . Control device for electronic game machines.
JP06197497A 1997-02-27 1997-02-27 Control device for electronic game machines Expired - Fee Related JP3696362B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP06197497A JP3696362B2 (en) 1997-02-27 1997-02-27 Control device for electronic game machines

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06197497A JP3696362B2 (en) 1997-02-27 1997-02-27 Control device for electronic game machines

Publications (2)

Publication Number Publication Date
JPH10240519A JPH10240519A (en) 1998-09-11
JP3696362B2 true JP3696362B2 (en) 2005-09-14

Family

ID=13186668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06197497A Expired - Fee Related JP3696362B2 (en) 1997-02-27 1997-02-27 Control device for electronic game machines

Country Status (1)

Country Link
JP (1) JP3696362B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4594475B2 (en) * 2000-02-14 2010-12-08 任天堂株式会社 Program discrimination system
JP3587771B2 (en) * 2000-08-16 2004-11-10 株式会社三共 Slot machine

Also Published As

Publication number Publication date
JPH10240519A (en) 1998-09-11

Similar Documents

Publication Publication Date Title
JP4457063B2 (en) Game machine
JP5109033B2 (en) Game machine
EP0356237A2 (en) Integrated Circuit Card
US8095990B2 (en) Gaming machine, gaming information authentication loading device and gaming information loading device
JPH1170253A (en) Pachinko game machine
JP2000339188A (en) Program execution abnormality detecting device
JP5934991B2 (en) Game machine
JP2021137491A (en) Game machine
JP2021137492A (en) Game machine
JP2016073403A (en) Game machine
JP4056150B2 (en) Game processing unit
JP3696362B2 (en) Control device for electronic game machines
US6959391B1 (en) Protection of the core part of computer against external manipulation
JP6217001B2 (en) Game machine
JP4013824B2 (en) Game machine
JP2004503860A (en) Data processing method and apparatus for execution of protected instructions
JP2021137483A (en) Game machine
JPH10179894A (en) Device for game
JPH10127915A (en) Electronic game machine
JPH08141196A (en) System of verifying content of setting of game machine, and system of controlling operation of game machine, and game machine
JP4013624B2 (en) Game machine
JP2002253823A (en) Game machine
JP3430378B2 (en) Gaming machine control device
JP4478919B2 (en) Game machine
JP4008969B2 (en) Matching device for gaming machine control chip

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050301

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050513

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: 20050614

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050629

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080708

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090708

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100708

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110708

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110708

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110708

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110708

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120708

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120708

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130708

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130708

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140708

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees