PCSX2GET 日本語マニュアル
ソ フ ト名:PCSX2GET ver1.60(2005/05/15)
ファイル名:P2G_V160.EXE + P2G.INI (この2つがあれば動きます)。
著作権者 :Imaha486
対応OS :WINDOWS XP / WINDOWS 2000
確認環境 :Athlon64 3200+/PC3200(512MB)x2/RADEON9800Pro
タイプ :フリーウェア。著作権は放棄してません。
転載条件 :とくになし。
公開元 :http://hp.vector.co.jp/authors/VA018359/
☆これは何のツールか?
PS2エミュレータPCSX2のデバッガは、必ず「エミュレーションを静止させてから見る」というスタイルのため、
動的にプログラムの流れを把握するのが難しかったり、エミュレーション失敗によるメモリエラーで強制終了してしまうと、
一体、何が原因で、どのアドレスで落ちたのか?などが一切わからない仕組みでした。
このツールは、デバッガで最も重要であるプログラムカウンタ(PC)とリターンアドレス(RA)の値を、
リアルタイムで表示することができ、万一、強制終了で落ちた場合はその「最後の瞬間」まで捕捉します。
要するに、プログラム解析やPCSX2パッチ作成の支援ツールですね。
なおVer1.55から実験的にEPCとErrorEPCのアドレスも取得するようになりました。
☆基本的な使い方
PCSX2でゲームを立ち上げたらPCSX2GET(P2G_V155.EXE)を実行します。
そのまま[Snap PCSX2]ボタンを押すと捕捉し、Debug paramの表示に反映されます。
※標準ではPCSX2 Ver0.7に合わせて設定しています。
異なるバージョンをお使いの方は後述の「アドレス補正」を必ずご覧下さい。
Loggingのチェックボックスを有効にすると、0000〜1000フレームまでPCとRAの履歴を保存し、
saveボタンを押せば、ログファイルをテキスト形式で出力することができます。
具体的なPCSX2GETを用いた解析方法については、PCSX2開発チームnachbrenner氏のサイトから、
Code Hacking Guides→Chapter 11: How To Skip IPU Ditherをご覧下さい。
未サポート命令を実行してPCSX2が止まってしまう症状を解決する手法を紹介しています。
☆アドレス補正
このプログラムはPCSX2のプロセスメモリから直接、パラメータを取得しています。
そのため、バージョンアップなどによって構造体の仕組みや変数パターンが変化することで、
アドレスに「ズレ」が生じ、正しくパラメータを取得できなくなってしまいます。
その修正を行うのがメニューの[Adjustment]です。
PCSX2でゲームを進めてからある程度の変化が起こった頃合にエミュレーションを中断し、
デバッガのR5900タブを開き、そのままPCSX2GETの[Adjustment]をクリック。
現在のPCの値はPCのエディトボックスへ、RAの値はRAのエディトボックスへコピー&ペーストして、
それぞれの[<< Adjust]ボタンをクリックします。
うまくサーチに成功すると、アドレス補正の有無を問うメッセージボックスが開くのでOKを押します。

さらにデバッガのCOP1タブを開き、EPCとErrorEPCの値も調整してやります。

2つとも修正したらバージョン表記も修正してやりましょう。(例)PCSX2 Ver0.8
なお、何度もメッセージボックスが開く場合は「数値に特徴が無さすぎ」です。
例えばRAの値が00000000だからといって00000000をコピー&ペーストして補正しようとしても、
そんな値は他にも大量にありますので、当然、候補は大量に該当します。
上画像のように 48f598 や 49a3b8 といった値の場合、ほぼ確実に1個所に絞れます。
MailAddress : hs_mana@hotmail.com
WebPage : http://hp.vector.co.jp/authors/VA018359/