CheatMasterFusion Special Format
CODE Encryption(R19D〜)
Restore Value(R20〜)

コード名の表記
_S ゲームID
_G ゲームタイトル
_C0 コード名 自動実行しない
_C1 コード名 自動実行する

http://cwcheat.consoleworld.org/wiki/doku.php?id=english:code:psp_types

Constant Write(連続書き込み)
8bit 0x0aaaaaaa 0x000000bb アドレスaaaaaaaに値bbを書き込み続ける
16bit 0x1aaaaaaa 0x0000bbbb アドレスaaaaaaaに値bbbbを書き込み続ける
32bit 0x2aaaaaaa 0xbbbbbbbb アドレスaaaaaaaに値bbbbbbbbを書き込み続ける

In/Decrement(加減算コード)
8bit 0x301000nn 0x0aaaaaaa アドレスaaaaaaaの値にnnを加算し続ける
0x302000nn 0x0aaaaaaa アドレスaaaaaaaの値からnnを減算し続ける
16bit 0x3030nnnn 0x0aaaaaaa アドレスaaaaaaaの値にnnnnを加算し続ける
0x3040nnnn 0x0aaaaaaa アドレスaaaaaaaの値からnnnnを減算し続ける
32bit 0x30500000 0x0aaaaaaa
0xnnnnnnnn 0x00000000 アドレスaaaaaaaの値にnnnnnnnnを加算し続ける
0x30600000 0x0aaaaaaa
0xnnnnnnnn 0x00000000 アドレスaaaaaaaの値からnnnnnnnnを減算し続ける
Test Code(条件判定コード)
8bit(ver0.1.4以降) 0xDaaaaaaa 0x200000dd アドレスaaaaaaaの値がddと等しければ下のコードを実行
0xDaaaaaaa 0x201000dd アドレスaaaaaaaの値がddと等しくなければ下のコードを実行
0xDaaaaaaa 0x202000dd アドレスaaaaaaaの値がddより小さければ下のコードを実行
0xDaaaaaaa 0x203000dd アドレスaaaaaaaの値がddより大きければ下のコードを実行
16bit 0xDaaaaaaa 0x0000dddd アドレスaaaaaaaの値がddddと等しければ下のコードを実行
0xDaaaaaaa 0x0010dddd アドレスaaaaaaaの値がddddと等しくなければ下のコードを実行
0xDaaaaaaa 0x0020dddd アドレスaaaaaaaの値がddddより小さければ下のコードを実行
0xDaaaaaaa 0x0030dddd アドレスaaaaaaaの値がddddより大きければ下のコードを実行
Multiple Skip
16-bit 0xE0nndddd 0x0aaaaaaa アドレスaaaaaaaの値がddddと一致するとき下のnn行分のコードを実行
0xE0nndddd 0x1aaaaaaa アドレスaaaaaaaの値がddddと一致しないとき下のnn行分のコードを実行
0xE0nndddd 0x2aaaaaaa アドレスaaaaaaaの値がddddより少ないとき下のnn行分のコードを実行
0xE0nndddd 0x3aaaaaaa アドレスaaaaaaaの値がddddより大きいとき下のnn行分のコードを実行
8-bit(ver0.1.9 REV.I 以降) 0xE1nn00dd 0x0aaaaaaa アドレスaaaaaaaの値がddと一致するとき下のnn行分のコードを実行
0xE1nn00dd 0x1aaaaaaa アドレスaaaaaaaの値がddと一致しないとき下のnn行分のコードを実行
0xE1nn00dd 0x2aaaaaaa アドレスaaaaaaaの値がddより少ないとき下のnn行分のコードを実行
0xE1nn00dd 0x3aaaaaaa アドレスaaaaaaaの値がddより大きいとき下のnn行分のコードを実行
Adress Compare+Multiple Skip(ver0.2.1A以降)
Adress Equal 0xDaaaaaaa 0x4bbbbbbb
0x000000nn 0x0000000Y アドレスaaaaaaaにある値とアドレスbbbbbbbに値を比較して一致するとき下のnn行分のコードを実行する,Y =0(8bit), 1(16bit), 2(32bit)
Adress Not Equal 0xDaaaaaaa 0x5bbbbbbb
0x000000nn 0x0000000Y アドレスaaaaaaaにある値とアドレスbbbbbbbに値を比較して一致しないとき下のnn行分のコードを実行する,Y =0(8bit), 1(16bit), 2(32bit)
Adress Less Than 0xDaaaaaaa 0x6bbbbbbb
0x000000nn 0x0000000Y アドレスaaaaaaaにある値とアドレスbbbbbbbに値を比較して少ないとき下のnn行分のコードを実行する,Y =0(8bit), 1(16bit), 2(32bit)
Adress Greater Than 0xDaaaaaaa 0x7bbbbbbb
0x000000nn 0x0000000Y アドレスaaaaaaaにある値とアドレスbbbbbbbに値を比較して大きいとき下のnn行分のコードを実行する,Y =0(8bit), 1(16bit), 2(32bit)
Multi Address Writes(シリアルコード)
8bit(ver0.1.6以降) 0x8aaaaaaa 0xbbbbyyyy
0x000000dd 0x000000ee アドレスaaaaaaaからbbbb個のアドレスになるように
yyyyアドレスずつずらしながら値ddを書き込み続ける。このときddもee分ずつ増加して書き込まれる。
16bit(ver0.1.6以降) 0x8aaaaaaa 0xbbbbyyyy
0x1000dddd 0x0000eeee アドレスaaaaaaaからbbbb個のアドレスになるように
yyyy*2アドレスずつずらしながら値ddddを書き込み続ける。このときddddもeeee分ずつ増加して書き込まれる。
32bit 0x4aaaaaaa 0xbbbbyyyy
0xdddddddd 0xeeeeeeee アドレスaaaaaaaからbbbb個のアドレスになるように
yyyy*4アドレスずつずらしながら値ddddddddを書き込み続ける。このときddddddddもeeeeeeee分ずつ増加して書き込まれる。
Boolean Commands(論理演算コード)
8-bit OR 0x7aaaaaaa 0x000000vv アドレスaaaaaaaの値とvvの論理和を書き込む
8-bit AND 0x7aaaaaaa 0x000200vv アドレスaaaaaaaの値とvvの論理積を書き込む
8-bit XOR 0x7aaaaaaa 0x000400vv アドレスaaaaaaaの値とvvの排他的論理和を書き込む
16-bit OR 0x7aaaaaaa 0x0001vvvv アドレスaaaaaaaの値とvvvvの論理和を書き込む
16-bit AND 0x7aaaaaaa 0x0003vvvv アドレスaaaaaaaの値とvvvvの論理積を書き込む
16-bit XOR 0x7aaaaaaa 0x0005vvvv アドレスaaaaaaaの値とvvvvの排他的論理和を書き込む
Pointer Commands(ポインタコード)
8-bit 0x6aaaaaaa 0x000000vv
0x00000001 0xiiiiiiii アドレスaaaaaaaに入ってる値を基準アドレスとし値vvを基準アドレス-0x8800000+iiiiiiiiに書き込む
16-bit 0x6aaaaaaa 0x0000vvvv
0x00010001 0xiiiiiiii アドレスaaaaaaaに入ってる値を基準アドレスとし値vvvvを基準アドレス-0x8800000+iiiiiiiiに書き込む
32-bit 0x6aaaaaaa 0xvvvvvvvv
0x00020001 0xiiiiiiii アドレスaaaaaaaに入ってる値を基準アドレスとし値vvvvvvvvを基準アドレス-0x8800000+iiiiiiiiに書き込む
Reverse Pointer(ver0.1.8 REV. C以降)
8-bit 0x6aaaaaaa 0x000000vv
0x00030001 0xiiiiiiii アドレスaaaaaaaに入ってる値を基準アドレスとし値vvを基準アドレス-0x8800000-iiiiiiiiに書き込む
16-bit 0x6aaaaaaa 0x0000vvvv
0x00040001 0xiiiiiiii アドレスaaaaaaaに入ってる値を基準アドレスとし値vvvvを基準アドレス-0x8800000-iiiiiiiiに書き込む
32-bit 0x6aaaaaaa 0xvvvvvvvv
0x00050001 0xiiiiiiii アドレスaaaaaaaに入ってる値を基準アドレスとし値vvvvvvvvを基準アドレス-0x8800000-iiiiiiiiに書き込む
Extra Pointer(追加オプション,Ver0.2.1以降)
type null 0x6aaaaaaa 0xvvvvvvvv
0xqqq2nnnn 0xiiiiiiii
0x00000000 0x00000000 nnnn>1のとき何もしないがqqqを入れる場合必要となる?
書き込みたいアドレスは基準アドレス-0x8800000+iiiiiiii+qqq*4になる。
multi adress write 0x6aaaaaaa 0x000000vv
0x0000nnnn 0xiiiiiiii
0x9sssssss 0x000000ww nnnn>1のときオフセットiiiiiiiiをssssssずつずらしながら書き込む。
vvもww分ずつ増加して書き込まれる。
0x6aaaaaaa 0x0000vvvv
0x0001nnnn 0xiiiiiiii
0x9sssssss 0x0000wwww nnnn>1のときオフセットiiiiiiiiをssssss*2ずつずらしながら書き込む。
vvvvもwwww分ずつ増加して書き込まれる。
0x6aaaaaaa 0xvvvvvvvv
0x0002nnnn 0xiiiiiiii
0x9sssssss 0xwwwwwwww nnnn>1のときオフセットiiiiiiiiをssssss*4ずつずらしながら書き込む。
vvvvvvvvもwwwwwwww分ずつ増加して書き込まれる。
copy byte 0x6aaaaaaa 0xvvvvvvvv
0x00000002 0xiiiiiiii
0x1sssssss 0x00000000 基準アドレス-0x8800000+iiiiiiiiにある値を基準アドレス-0x8800000+ssssssssにvvvvvvvv分だけコピー
multi pointer(0.2.2REVA以降) 0x6aaaaaaa 0xvvvvvvvv
0x000t00nn 0x0000zzzz
0xS000iiii 0xS000jjjj ... 0xS000yyyy t=最終到達アドレスに書き込むbit数,0xS=オフセットの加減 0x2でプラス 0x3でマイナス
aaaaaaa=第1ベースアドレスがあるポインタアドレス、vvvvvvvv=最終到達アドレスに書き込む値,nn=追跡する回数
iiii=第1ベースから足す/引くオフセット,jjjj=第2ベースから足す/引くオフセット,yyyy=第(NN-1)ベースから足す/引くオフセット,....,zzzz=最後に足す/引くオフセット,最終書込アドレス=第nnベースアドレス-0x8800000+/-zzzzになる
Joker Code(パッドコード)
0xD00000dd 0x1000nnnn nnnnはパッドの合計値、dd+1行分実行される
Inverse Joker Code
0xD00000dd 0x3000nnnn ボタンを押している間だけ無効になる

ボタン パッド値(=nnnn)
セレクト 0x0001
スタート 0x0008
上 0x0010
右 0x0020
下 0x0040
左 0x0080
L 0x0100
R 0x0200
△ 0x1000
○ 0x2000
× 0x4000
□ 0x8000
HOME 0x10000
HOLD 0x20000
NOTE 0x800000
SCREEN 0x400000
VOLUME UP 0x100000
VOLUME DOWN 0x200000
WLAN UP 0x40000
REMOTE HOLD 0x80000
Copy bytes(コピー)
0x5aaaaaaa 0xnnnnnnnn
0xbbbbbbbb 0x00000000 アドレスaaaaaaaからbbbbbbbbbにnnnnnnnnバイト分コピーする
Code stopper(停止コード)
0xCaaaaaaa 0xvvvvvvvv アドレスaaaaaaaの値がvvvvvvvvになったときコードが停止する
Time command(遅延コード)
0xB0000000 0xnnnnnnnn nnnnnnnn分だけ遅らせる,0x100で10秒

FREECHEAT Special Format
MULTI(HIGH LV) POINTER(080323 later version)
Multi Pointer+Option 0x6aaaaaaa 0x00000000
0x000u0000 0x0000iiii
0x60000000 0x00000000
0x000u0000 0x0000jjjj
0x60000000 0x00000000
0x000u0000 0x0000kkkk ....
0x60000000 0xvvvvvvvv
0x000t0001 0x0000zzzz
0x90000000 0x00000000 aaaaaaa is pointer address,the first baseaddress position
t = write bit, see CWC
vvvvvvvv=write value
u=add/substract offset.6 is adding,7 is substracting

iiii=add/substract offset to 1st baseaddress

jjjj=add/substract offset to 2nd baseaddress

kkkk=add/substract offset to 3rd baseaddress

....
zzzz=add/substract offset to last baseaddress

write a final address=last baseaddress-0x8800000+/-zzzz
# Multi address write and Copy bytes can be used with multi pointer.
CheatMasterFusion Special Format
CODE Encryption(R19D〜)
Encrypted codes 0xF0XXXXnn 0xYYYYYYYY next nn lines encypted code is executed.
Restore Value(R20〜)
Restore codes 0xCaaaaaaa 0xbbbbbbbb this code is same "type 0x2" 32bit write,difference is restoring original value when you unlock code.