制御 - みる会図書館


検索対象: パチROM解析いたします
8件見つかりました。

1. パチROM解析いたします

5 . リーチだけ見たい ! 1 ) 基板構成を見てみよう という方にはちょっと面倒ではあるが擬似的に主制御基板と同じ動作をする装置を作成して コマンドを送信すれば可能になる。 基板構成を見ると、主制御基板と液品制御基板の間にサプ制御基板が接続されており、 サプ制御基板では、主制御基板から送信されてくるコマンドを液品、ランプ、サウンドの 各制御基板に対応したコマンドに変換し、演出の進行度合いに応じたタイミングでコマンドを 送信し、各制御基板はコマンドの内容に応じて演出しているようである。 ー - の 2 ) フローチャートにしてみる・ 基本的な流れとして、電源投入時の処理、タイマー割込み処理、 NM I 処理の 3 本のルーチン で構成され、ほとんどの処理がタイマー割込み内で処理されているようである。 ①電源投入時処理 電源投人 初期設定処理 リセットボタン O N ? 電源 電源 電源 電源基板 コマンド信号 サプ制御基板 主制御基板 コマンド信号 液品制御基板 Y e s RAM 初期化 初期値行進用カウンタ 更新 バックアップ状態 ? Y e s バックアップデータ復帰 R E T バックアップ機能があることにより、電源投入時はそのデータをリセットするためのボタンが 押されているか否かの確認を行い、リセットボタンが押されているかバックアップ状態からの 復帰でなければ内部を完全にリセットし、バックアップ状態からの復帰であれば、各データを るようである。 無限ループとなるルーチンでは、後に説明します初期値史新用カウンター値の更新を行ってい ようであるが、これはいわゆるゴト対策なのではないかと。 内部を完全にリセットした場合は、ランプやサウンドにてリセットしたことを外部に報知する バックアップ直前の状態に元に戻しプログラムを再開させるようである。

2. パチROM解析いたします

④スイッチ入力処理 スイッチ人力処理 人力ポート処理 チャッカー人力処理 アタッカー人力処理 4 ) V スイッチの確認 3 ) アタッカースイッチの確認 2 ) チャッカースイッチの確認 1 ) 入力ボートの確認 大当たり中以外はアタッカーや V のスイッチをチェックをしなようになっているようである。 ないかと思うがいまはほとんどその機能を持っている台はないようである。 一時期デジタルの回転をスキップする機能があったが入力はこの部分で行っていたのでは ハチンコの入力は、玉の通過をチェックするためのスイッチの状態のみのようである。 R E T V スイッチ処理 2 ) 基板構成を見てみよう 基板構成を見ると、電源基板から電源と制御信号が入力されており、制御信号には、 「リセット信号」、「リセットボタン」の情報が含まれていて、チャッカースイッチは 主制御基板に直接接続されている。 電源 制御信号 リセット ボタン ロ 電源基板 スイッチ信号 チャッカー スイッチ 主制御基板 3 ) 強制的に大当たりさせる基板構成は ? 強制的に大当たりを発生させるために以下の構成にて以下のタイミングチャートの動作を 有する強制基板を中継させることができれば任意のタイミングで大当たりさせることが 可能になる。 リセット ボタン ロ 電源基板 制御信号 ロ 電源 主制御基板 強制スイッチ信号 強制制御信号 強制リセットボタン 強制基板 チャッカー スイッチ スイッチ信号

3. パチROM解析いたします

7 . あとがき もっと時間があれば ( 余裕もってやればよかったと大反省・ ・ ) もっと細かく解析して もっと細かく書けたはずなのだが、書き始めたのが直前という状況だったのは時間配分を 激しく間違えた結果ではないかと。 ただいえることは、ザイログ社の Z80 が使用されていたころと比べても大当たりにかかわる 処理の部分は全然変わっていないなあと。 その当時の機種はデジタル回転の処理を主制御基板で全て制御していたので、解析に時間が かかった記憶はあるが、表示されるデータの信頼度等は全て分かったので ( 分かった時には もうパチンコ店には存在しなかったけど・・・ ) 解析のしがいがあったのですが、今の機種は、 液品制御基板側で処理している演出の内容の方にウェートが占められているので、解析の しがいがないというか、しかも、液品制御基板の解析なんてとてもできる環境じゃないし、 そんなものはパチンコ雑誌見たほうが早いし正確 ? だよなあーと。 最後に、このような内容の本ではありますが最後まで読んで頂いた方々に感謝申し上げます。 今後はきちんとしたものを発表できるようきちんと計画を立てて、日々の解析状況等を HP などで史新しながら進めていきますので、今後もよろしくお願いいたします。 tazue@kdt.biglobe.ne.ル たづ江工房 まえがき この本を読んだとしてもパチンコに勝てるかどうかは時の運であるということ。 まあパチンコ雑誌を読んでリーチの信頼度が解ったとしても遊技中のお楽しみ要素が 増えるぐらいの単なる情報でしかないことと同じことです。 ザイログ社の Z 8 0 や P I O が使われていて ROM も RAM も外付けだった時代には 個人的な趣味でハード、ソフトを解析して好きなように楽しんでいたのですが、 セキュリティー対策を施した C p U ? が使われるようになってからは、どうしようも なくなり、その世界 ? から一時離れることに。 しばらくしてから、どうしても欲しい台がインターネットの中古屋で売っているのを発見し、 購入してみたら、どうもゲームセンター用 ? に作ったと思われる擬似 CPU が ! しかも窓付き ROM が ! ・ 、これは ! これは壊してはいけないとこれ以上無いほど親切丁寧に取り扱って、好きなように改造して 遊んでいたのですが、さらに高機能 ? のセキュリティー CPU が登場したらしく、 再びその世界 ? から足を洗おうとしていたら、ある時、某掲示板サイトにその CPU の ピン配列が書かれていたのを発見 ? してしまい、昔のように ROM のデータを抜いて好き 勝手に変更して遊びたいという欲望が沸々と・ しかし ! 今のパチンコに使用されている C P U も激しくセキュリティー対策が施されている ようで内蔵の R O M もフラッシュ等書き換え可能では無くワンタイムであることにより プログラムを変史して自分の好きなように動かすためには過去のような擬似 CPU を どっかから入手するか自力で作成しないといけないようである。 安易な考えではあるが抜き出したプログラムを見てみると、プログラム領域、データ領域、 セキュリティー領域 ? に分かれているようで、なんというかソフト、ハードの両方を解析し、 丸ごと一台いっちゃおうか ? と思ってはみたものの、思ったよりは壁は高く、素人には そう簡単には行かなかったということで、先に詫びておきますが、完全な解析手法を記載する に至らなかった点は本当に申し訳なかったと。 今回はパチンコプログラムの基本的な解析方法と自宅にあるハチンコ台を改造して自分の 見たいリーチを好きな時に見たりとかそういう時のためにどうすればいいのかという事の さわりを実体験と憶測にもとづき書いていきたいと思っております。 たづ江工房

4. パチROM解析いたします

②タイマー割込み タイマー割込み R E T ー データー出力処理 大当たり処理 デジタル史新処理 カウンター更新処理 タイマー更新処理 スイッチ人力処理 プログラムの主となる処理はタイマー割込み内でほとんど全て行っているようである。 6 ) データの出力処理 5 ) 大当たり時の処理 4 ) デジタルの更新処理 3 ) カウンターの更新処理 2 ) タイマーの史新処理 1 ) スイッチの入力確認 4 ) 今後の課題 問題点というか今後の課題としては以下のようなものがある。 ②リセットボタンが実装されている基板 コネクター変換基板が必要になってくることである。 使用されているコネクターが異なるため、全てのメーカーを網羅するには強制基板の前段に 強制基板の回路は機種によって大きな変更の必要ないが、機種というかメーカーによって ①コネクターの違い いるものもあるらしいので、その場合は主制御基板の改造も必要になってくるかと思われます。 そう大きな問題でもないのだが最近の機種ではリセットボタンが主制御基板に実装されて サウンドで激しく報知するため、非常にうるさい。 完全リセットを行った場合、サプ基板に対して RAM クリアーが発生したことをランプや ③リセットの報知

5. パチROM解析いたします

⑧判定した結果が大当たりであった場合は、大当たり数字用のカウンターの値と、 リーチ内容決定用のカウンターの値により、大当たり用のリーチの内容を決める。 液品表示器のほうでそれに対応する演出を行うようである ) ( 現在はリーチの種類というより何秒間デジタルを動かすかを決めて、 リーチにならない値であった場合は、 ⑩判定した結果が大当たりでない場合で、 内容決定用のカウンターの値により、外れリーチの内容を決める。 ⑨判定した結果が大当たりでない場合で、 リーチにならない動きに決定する。 リーチ判定用のカウンターの値が リーチになる値であった場合は、リーチ数字用のカウンターの値と、リーチ リーチ判定用のカウンターの値が ( 普段良く目にするのがこれである ) 時間的に無理なので主要な部分のみを見ていこうかと。 追加されていたりしているかもしれないのですけど、今回はすべての処理を解析するには , , に聿いた処理が無くなっていたり、内容が変変わっていたり、実はものすごい処理が などなど、いろんな処理を行っているが、最近は法律の変史がちよくちよくあるようで ⑩電源を入れる時に状態をリセットすることができる。 ⑩停電用のバックアップ処理がある。 ( 本体についているブッシュボタンは液品表示器で処理しているらしい ) ⑩入力は盤面のスイッチ入力のみで外からの入力は無い。 人りやすくなる。 するだけでなく、サプのデジタルの演出秒数が短くなり、スタートチャッカーに玉が ⑩メインのデジタルとサプのデジタルがあり、確率変動時はメインデジタルの確率がアップ ( 最近の台は見た目大当たりしなくても確率変動が終了するのもあるらしい ) 大当たりまで確率変動状態になる。 ⑩大当たり終了時に、大当たりしたデジタルが特定の組み合わせであった場合は、次の 大当たりの処理を終了する。 ⑩アタッカーが閉じた時に、 V に玉が入っていないか、最終ラウンドであった場合は、 を開く。 ( 最近の台は V が無くなったようで決められたラウンドまで進むようである ) ⑩アタッカーが閉じた時に、 V に玉が入っていれば、次のラウンドに進み、再びアタッカー ⑩大当たり中は、アタッカーを開き、決められた個数の玉が入ったらアタッカーを閉じる。 処理を一旦中止し、大当たりの処理へ移行する。 ⑩デジタルが止まった時に、大当たりの組み合わせであれば、デジタルを動かす 大当たりとなるまで処理を繰り返す。 ⑩デジタルが止まった時に、外れの組み合わせであれば、 7 ) の処理に戻り、 2 ) 強制的に演出を見るための構成は ? 数 mS の間に大量のコマンド、しかも膨大な種類のコマンドを送信するためには、 ハード的に擬似主制御基板や擬似 CPU を作成すると非常に手間と時間がかかるので、 PC を使用して以下のような構成を形成し、中継基板 ( レベルコンバーター的な ) を 中継して P C にてコマンドの送信を行うのがよいかと。 しかもこの構成の場合は、中継基板の変史のみ ( アプリの変史も多少は必要かな ? ) で いかなる機種の演出を見ることも可能になるので非常に有効であり、ハラレル信号と いっても、 8 十 1 ビットのデータが連続して送信できればいいので、いわゆるポケコンと いうものでも十分いける構成である。 ノくラレノレイ言号 P C 中継基板 電源 コマンド信号 サプ制御基板 電源 液品制御基板 コマンド信号

6. パチROM解析いたします

1 . どんな処理をしているのか ? 1 ) プログラム、知ってるつもり・ パチンコって、玉を買って打ち出して、チャッカーに入ればデジタルが回り、左右の数字が 同じになればリーチになって、揃わなければ外れで、同じ数字が並べば大当たりで、大当たり した数字が確変数字であれば、次大当たりするまで大当たりする確率がアップして・ ・と いうのがパチンコの一連の流れな訳なのですが、実はそのほとんどが外れとなる演出の繰り返 しを、長時間に亘って見せられるという金を払ってるのに拷問されているような気分になる。 大ハマリしている時に隣のおっちゃんが座って 5 0 0 円で大当たりとかすると、なんか操作 してんじゃないの ? という気分に激しくなるのですが、初めてそのプログラムを抜き出して 中を覗いてみたら、常に完全確率で制御されているのが分かり、ああやつばハチンコって 運なんだなあと。 まあそんなこんなでいきなり ROM からデータを抜いて、逆アセンプルを開始しても訳が分か らなくなるはずなので焦らず急がず今の段階で分かっている事 ( つもりも含む ) を項目に分け てみることに ①定期的に大当たり判定用のカウンター値を加算する。 加算した値が最大値を超えた場合は 0 に再設定する。 ( 初期値史新用のカウンターというものが最近はあるらしい ) ( 雑誌等で乱数とうい言い方をしている場合もあるが制御的には十 1 加算のカウンター として制御しているようなので今回はカウンターという名称で統一することに ) ②定期的に大当たり数字用のカウンター値を加算する。 加算した値が最大値を超えた場合は 0 に再設定する。 ③定期的に外れ数字用のカウンター値を加算する。 加算した値がリーチとなる組み合わせの場合は再度加算する。 ④定期的にリーチ数字用のカウンター値を加算する。 加算した値が大当たりとなる組み合わせの場合は再度加算する。 ⑤定期的に演出決定用のカウンター値を加算する。 加算した値が最大値を超えた場合は 0 に再設定する。 ( リーチ判定用、リーチ内容決定用等々複数ある ) ⑥スタートチャッカーに玉が入った時は、記憶の数が 4 個未満であれば、大当たり 判定用のカウンターの値と大当たり数字用のカウンターの値を記憶する。 ( この処理は他でなんの処理をしていようが処理し続ける ) ⑦デジタルが停止している時に記憶したものがあれば、その値を読み出して、 特定の値と一致しているかどうか判定する。記憶が無ければなにもしない。 ( 大当たりするかどうかはここで決まる ) 6 . ピン配列 1 ) C P U のピン配列 CPU のピン配列を接続図にするとこんな感じになるのかと。 普通 ? の 1 チッブマイコンに比べて、なんか無駄にピン数が多いなあと。 別に DRAM を外部に置くわけでもないのに RFSH 端子や、 MI 端子なんて 要らないだろうし、チップセレクト端子 ? が 1 2 本もあるならわざわざアドレスパス 全部出しておくこともないだろうし、ん一よく分からない。 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 6 6 6 6 6 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 A 7 A 6 A 5 A 4 A 2 A 1 A 0 ー N T N M ー M R E Q ー O R Q R D W R M 1 V S S V D D R S T 0 S R S T U R S T PP17/XCS107 PP16/XCSI()6 PP15/XCS105 PP14/XCS104 PP13/XCS103 PP12/XCS102 PPI I/XCSIOI PPIO/XCSIOO V S S 0 1 2 3 4 5 6 7 8 9 0 1 っ朝 3 4 5 6 7 8 9 0 ー 2 1 っ乙つけ -4 一 0 6 】「 / 8 一 9 ・ 1 1 ー・ー 1 ー - ー 1 ー・ーーっ乙っ乙り乙 0 乙り乙ワ」っ」っ 0 っ 3 っ 2 ハ 0 V S S A 8 A 9 A 1 0 A 1 ー A 1 2 A 1 3 A 1 4 A 1 5 V B B ZC/TOO ZC/TOI CLK/TRG2 CLK/TRG3 V D D C L K V S S 日 A L T R F S 日 PP20/XCS 1008 PP21 /XCS 1009 PP22/XCS1010 PP23/XCS1011 V D D D 0 D 1 D 2 D 3 D 4 D 5 D 6 D 7

7. パチROM解析いたします

③ N M I 処理 ①リセットボタン信号は電源基板からの状態をそのまま出力できること。 ②リセット信号は電源基板からの状態をそのまま出力できること。 ③スイッチ信号はチャッカースイッチの状態をそのまま出力できること。 ④強制基板に実装されている強制リセットボタンを ON することにより、 リセットボタン信号の状態によらず、強制リセットボタン信号と強制リセット信号が 出力されること。 但し強制リセットボタンよりも先に強制リセット信号が復帰しないこと。 ⑤強制リセット信号の復帰により内部カウンターをリセットし動作の開始ができること。 ⑥大当り判定値と同数値を設定できるスイッチを有し、内部カウンターの値と 判定値設定スイッチの値が一致した場合は強制スイッチ信号を強制的に ON させ、 一定期間の経過により〇 FF にすることができること。 ⑦強制スイッチ信号が〇 FF になることによって内部カウンターの史新を停止する ことができること。 ⑧内部カウンターの史新タイミングと主制御基板のタイマー割込みタイミングの同期を とるために機種によって史新タイミングを変更できる機能を有すること。 N M ー処理 各レジスター I F F 、スタ ックポインタを R A M 領域へ 退避する バックアップ状態を記憶 RAM へのアクセスを禁止 電源断時の処理であると思われるが、電源基板の電圧監視モジュールが特定の電圧レベルを 下まわった時に NMI 端子のレベルが変化しこの処理を行うようである。 バックアップの対象が RAM 工リアのみのためか、各レジスター、スタックポインター I FF 、バックアップ状態であることを認識するためのデータこの処理の先頭にて特定の場所 に退避する。 永久ループに入る前に特定の領域に何らかのデータを設定して、なおかっ HALT 命令を使用 していないのは RAM 領域へのアクセスを禁止しているのではないかと思われる。 電源 リセット信号 ( 入力信別 リセットボタン ( 入力信号 ) スイッチ信り・ ( 入力信号 ) ① ② 強制リセット信号 ( 出力信号 ) ③ 強制リセットボタン ( 出力信号・ ) 内部カウンター 判定値設定スイッチ 7 強制スイッチ信号 ( 出力信号 )

8. パチROM解析いたします

⑤入力ポート処理 4 . 大当たりさせてみよう ! 1 ) 強制的に大当たりさせるには 中途半端ではありましたが、大当たりの判定にかかわる処理がどのような感じで処理されて いるかは解析できたのですが、プログラムを変更したとしてもそれを動かすための CPU 等が ないため、いまの状態ではソフト側から攻めるのは無理だということでハード側から攻める ことにする。 初期値史新用カウンターを利用していることにより大当たり判定用カウンターの値に 同期性が無いとしても、完全リセットしてしまえば、大当たり判定用カウンターの値は 0 から 更新を始めるため、取得した判定値を比較する時に、大当たり判定値と一致する値を取得する 割込み回数目でスタートチャッカーを〇 N させて大当たり判定用カウンターを取得すれば いいはずである。 任意の大当たり判定用カウンター値を取得する流れ、タイミングチャートは以下のようになる。 ①リセットボタンを ON の状態にする。 ( リセットボタンは電源投入時処理のみの確認となるため現段階ではリセットされない ) ②強制的にリセット信号を発生し、電源投入時の処理へ移行させる。 ③電源投入時の処理にてリセットボタンが ON されていることにより、 RAM クリアーの 処理が行われ、完全リセットの状態になり、大当たり判定用カウンターの値も 0 に 設定される。 ④大当り判定値と一致する割込み数目にスタートチャッカーを強制的に〇 N し、 大当たり判定用カウンターの値を取得させる。 ( 以下のタイミングチャートは判定値が 7 の場合となります ) 人力ポート処理 入力ポートのデータ取得 今回の人力ポートの状と とで論理積をとる 前回の人力ポートの状態 演算結果を 入力データとして保存 人力ポートの状態を反転し 前回の人力ポートの状態 として保存 R E T 以下のようなタイミングチャートで 0 N / O F F の確認を行っているようである。 機種によっては複数割込み継続して ON となった場合のみ〇 N と認識しているものもあるが これだけの処理を 1 割り込み内で処理しているので割込みの設定値も長くなることにより 複数回の継続確認をしている最中に玉がスイッチを通過してしまうという不具合がでて しまうためか 1 回のチェックで確認しているのが多くなってきたようである。 その場合でも以下のタイミングチャートの応用なので制御的には同じことかと。 Z Z 日 *-2 Ⅱ --: 0 0 C 0 電源 ② リセット信号 人力ポートの状態 リセットボタン チャッカー スイッチ カウンター値 ( 反転したデータ ) ① 0 0 0 0 状 の タ のボデ 回カカ 前人入 0 0 0 0 ー 7 : 8 9 ー : 0 ⅱ第 2 ー 3 ー 4 ー 6 不定 ↑ O N と認識 ↑ 0 N と認識 ③