基本的な使い方

・わかってる人向け
エミュ起動→ROM読込→emuhaste起動→MODE CHANGE→エミュ種類選択
→SNAP PROCESS→コードサーチ→コード動作チェック→ウマー(゚Д゚)

・・・以下、初心者向け

見た目は以下のような感じです。
スクリーンショット

初回起動時はサーチ方法を選択するように表示されるので、サーチしたい項目を選んでください。
続いて改造コードエンジンの選択が表示されるので使いたいものを選んでください(推奨=default)。

ゲームを始めた後、メニュー左上の [SNAP PROCESS] でプロセスを捕捉すればサーチ可能になります。
ここでエラーが表示される場合、右下のINFORMATION & MEMOにあるProcessの名前と、
実際にゲームプレイに利用しているエミュレータのプログラム名が一致していることを確認してください。

Hex Viewer

emuhaste左上半分の16進数羅列表示エリアを「Hex Viewer」と言います。
直接パラメータやキャラクター名などを確認するために使用します。
「自動更新」のチェックを外すと表示が固定されたままになります。

Search Pallet

実際にパラメータサーチを行うのがこの「Search Pallet」です。
必ず最初は新規サーチ[NEW]ボタンを押してサーチ用バッファをクリアしてください。
また、サーチをやり直す場合もこのボタンを押してください。

PARAM & STRING SEARCH
16進数、10進数、浮動小数点数、文字列などのパラメータを直接指定してサーチできます。
サーチ対象書式例説明
16進数00FFEE1122…直接打ちます。最大で255桁までサーチ可能
16進数
(エンディアン反転)
R00FFEE1122…Rを付加するとエンディアン反転してサーチします。
左例であれば2211EEFF00…を検索します。
10進数(直指定) S0 〜 S255
M0 〜 M65535
L0 〜L4294967295
8ビット(00-FF)の値を探します。
16ビット(0000-FFFF)の値を探します。
32ビット(00000000-FFFFFFFF)の値を探します。
10進数(変化量) +S0 〜 +S255
+M0 〜 +M65535
+L0 〜 +L4294967295
10進数指定の頭 にプラスまたはマイナスの符号を付けると、
「変化量」を調べることができます。
(例)敵に34ダメージを与えた→敵のHPは34減った→-M34
浮動小数点数T0 〜浮動小数点数サーチ(Ver2.55で正式実装しました)。
文字列$string文字列検索。キャラ名からステータステーブルを探したりとか。
任意のアドレス範囲Innnnnnnn-nnnnnnnn
(開始addr - 終端addr)
16進数で任意の範囲に含まれるパラメータ探します。
DATEL TOOLKITのレンジサーチと同じです。
任意以下ピックアップ<S0〜S255
<M0〜M65535
<L0〜L4294967295
サーチ候補の中から指定した数値より大きいものを除去。
仮に <S50 を指定すると51より大きいものを除去できる。
(算術的には ≦ です)
任意以上ピックアップ>S0〜S255
>M0〜M65535
>L0〜L4294967295
サーチ候補の中から指定した数値より小さいものを除去。
仮に >S50 を指定すると49より小さいものを除去できる。
(算術的には ≧ です)
「任意の範囲」検索については上級者向けのため、あえてここでは説明しません。
左メニュー上級者の方へ/変動アドレスのサーチ方法リンクを参照。

MULTI SEARCH
目に見えないパラメータ(HPゲージや好感度など)を探す際に用います。
初めにDATA TYPEでバイトサイズを指定して、絞り込みやすくしてください。
例えば「レベル」は大抵0〜99なのでBYTE、「所持金」は999999999だったりするのでDWORDですね。
後はステータス変化に合わせて「増加」「減少」「変動」「不動」で絞り込めばOK。

AUTO TRIGGER enable & update ver4.00 New!
「アドレス:16進数値(16バイトまで):実行コマンド,アドレス2:16進数値2:実行コマンド2,アドレス3...」
というパラメータを指定してからチェックを入れると、そのアドレスの値が指定した数値になった瞬間に
自動的にサーチコマンドが実行されます。
(書式例)
アドレス02184F7DにLRボタンの情報が入っており、Lは02がセットされるので減少[-]サーチを、
Rは01がセットされるので増加[+]サーチのコマンドを割り当てる。
02184F7D:02:LE,02184F7D:01:GT

実行可能なコマンドは以下の5種類。
EQ .. イコール(=不動)
NE .. ノットイコール(!=変動)
GT .. グレーター(+増加)
LE .. レス(-減少)
MS .. マルチサーチ

値を誤るとサーチしっぱなしに固定されてしまうことがありますが、SHIFTキーを押し続けると
一時的に無効化できるので、その間にチェックボックスを外してください。

SET SEARCH RANGE
この項目にチェックを入れ、下に二つ並ぶチェックボックスにそれぞれ
「開始アドレス-終了アドレス」を入れることでサーチ範囲を指定することができます。

CHEAT ENGINE

emuhasteはサーチツールですが、簡易的な改造コードの動作チェックが可能です。
Ver2.00からエンジンの差し替えが可能になりました。
どんな改造コードエンジンがあるかは、左メニューの改造コードエンジンを選ぶをご覧下さい。

同封の標準エンジン(default.dll)では、以下のコードをサポートしています。

一般的な改造コード(初心者向け)
コード書式効果・用法
0aaaaaaa 000000nnアドレスaaaaaaaに1バイトnnを書き込む
1aaaaaaa 0000nnnnアドレスaaaaaaaに2バイトnnnnを書き込む
2aaaaaaa nnnnnnnnアドレスaaaaaaaに4バイトnnnnnnnnを書き込む
Daaaaaaa nnnnnnnnアドレスaaaaaaaが4バイトnnnnnnnnのときだけ次の行のコードを実行

特殊効果をもつコード(上級者向け)
コード書式効果・用法
Baaaaaaa 00000000アドレスaaaaaaaの4バイトをインデックスとして0,1,2コードのアドレスをずらす ※
D2000000 00000000Bコードのインデックスの値を0にリセットする
4aaaaaaa nnnnnnnn
w000zzzz uuuuuuuu
アドレスaaaaaaaにパラメータyyyyyyyyをuuuuuuuuバイトごとにzzzz回、
w=0のときは1バイト、1のときは2バイト、2のときは4バイト書き込む。
(Dipstarシリアルコードもどき互換)
※Bコードの仕様はDSプロアクションリプレイ互換です (load index,[addr] & str param,[addr+index])

また、スペースや / @ * といった記号を行の先頭に置くとコメント扱いになります。

各ボタンおよびチェックの機能は以下の通り。
「更新&適用」ボタン … 入力したコードを適用&実行します。
「to ClipBoard」ボタン … クリップボードに改造コードをコピーします。
「CLEAR」ボタン … 改造コードを全て消去します。
「常に実行」チェック … このチェックを入れると常にコードが実行されます。
「DLL拡張」チェック … DLLに対してこのチェックの値を渡すことで挙動を変化させます。
              ※default.dllでは改造コードの1バイト書き込みと4バイト書き込みの効果を反転します(主にDS用)

EXTRA MODE -エクストラモード-

メニューの [EXTRA] をクリックすると、EXTRA MODEダイアログが開きます。


この画面でOKボタンを押すと、emuhasteがエクストラモードに切り替わります。

このモードでは、コンフィグファイルを修正することなく、対象プロセス名や
アドレス情報などをカスタマイズすることができます。
ただし、使い方次第ではシステムにダメージを与える可能性がありますので、
「本当に理解している方のみ」お使いください。

なお、Refresh rateは「改造コードの実行頻度をミリ秒で指定」です。
(ヘキサビューワの更新周期はコレの5倍の時間です。 50→50x5 = 250ms …0.25秒ごと)。

BaseAddr detect step sizeは、BASEADDR_KEYでベースアドレス検索する際のステップ幅を指定します。
普通は 4 で良いのすが、スピード重視の場合は 16。精度重視の場合は 1 を指定してください。