PS2 Commands

From Wiki - GameHacking.org
Revision as of 14:53, 12 February 2016 by Dlevere (talk | contribs)
Jump to: navigation, search

PS2 Commands

Standard Format (CB/GS/XP/AR2)

</tbody>
8-bit Constant Write 0aaaaaaa 000000dd

This command will constantly write the value specified by dd to the address specified by aaaaaaa .

16-bit Constant Write 1aaaaaaa 0000dddd This command will constantly write the value specified by dddd to the address specified by aaaaaaa .

32-bit Constant Write

2aaaaaaa dddddddd

This command will constantly write the value specified by dddddddd to the address specified by aaaaaaa .

Increment/Decrement Commands

8-bit Increment 301000nn aaaaaaaa This command adds the value specified by nn to the value stored at the address aaaaaaaa .
8-bit Decrement 302000nn aaaaaaaa

This command subtracts the value specified by nn to the value stored at the address aaaaaaaa .

16-bit Increment 3030nnnn aaaaaaaa

This command adds the value specified by nnnn to the value stored at the address aaaaaaaa .

16-bit Decrement 3040nnnn aaaaaaaa

This command subtracts the value specified by nnnn to the value stored at the address aaaaaaaa .

32-bit Increment

30500000 aaaaaaaa
nnnnnnnn 00000000

This command adds the value specified by nnnnnnnn to the value stored at the address aaaaaaaa .

32-bit Decrement 30600000 aaaaaaaa
nnnnnnnn 00000000

This command subtracts the value specified by nnnnnnnn to the value stored at the address aaaaaaaa .

<a name="TOC-Test-Commands"></a>Test Commands

16-bit Equal Daaaaaaa 0000dddd

Only when the value at the address specified by aaaaaaa is equal to the value specified by dddd will the next line of code be executed.

16-bit Not Equal

Daaaaaaa 0010dddd

Only when the value at the address specified by aaaaaaa is not equal to the value specified by dddd will the next line of code be executed.

16-bit Less Than

Daaaaaaa 0020dddd

Only when the value at the address specified by aaaaaaa is less than the value specified by dddd will the next line of code be executed.

16-bit Greater Than Daaaaaaa 0030dddd Only when the value at the address specified by aaaaaaa is greater than the value specified by dddd will the next line of code be executed.

16-bit Equal : Multiple Skip

Ennndddd 0aaaaaaa Only when the value at the address specified by aaaaaaa is equal to the value specified by dddd will the next nnn lines of code be executed. Otherwise, they will be skipped.
16-bit Not Equal : Multiple Skip Ennndddd 1aaaaaaa

Only when the value at the address specified by aaaaaaa is not equal to the value specified by dddd will the next nnn lines of code be executed. Otherwise, they will be skipped.

16-bit Less Than : Multiple Skip

Ennndddd 2aaaaaaa

Only when the value at the address specified by aaaaaaa is less than the value specified by dddd will the next nnn lines of code be executed. Otherwise, they will be skipped.

16-bit Greater Than : Multiple Skip Ennndddd 3aaaaaaa Only when the value at the address specified by aaaaaaa is greater than the value specified by dddd will the next nnn lines of code be executed. Otherwise, they will be skipped.

<a name="TOC-Miscellaneous-Commands"></a>Miscellaneous Commands

Copy Bytes 5aaaaaaa nnnnnnnn
bbbbbbbb 00000000
a = Address to copy from
b = Address to copy to
n = Number of bytes to copy
32-bit Multi-Address Write 4aaaaaaa xxxxyyyy
dddddddd 00000000
Starting with the address specified by aaaaaaa, this

code will write to xxxx addresses. The next address is determined by incrementing the current address by (yyyy * 4). The value specified by dddddddd is written to each calculated address. Also known as a "Patch

Code."

<a name="TOC-Untested-Commands"></a>Untested Commands

Master-Command 8aaaaaaa bbbbbbbb
cccccccc 00000000

One Time Activator Aaaaaaaa 000000xx
Time Command B0000000 nnnnnnnn v = delay value (32 bit)
Delay putting on all following codes for v cycles; effect varies between games.
To act on all codes, put it at the top of the code list!

B0000000 10000000
Loop is executed 0x10000000 times.
Code Stopper Caaaaaaa vvvvvvvv a = address (25 bit)
v = value (32 bit)

All following codes will be executed only, if 32-bit value at given address, a, is equal to given value, v.
Otherwise, they will be skipped. Can be used to exit the code sequence at any point.
To act on all codes (like traditional "Auto Activation"), put it at the top of the code list!
Example:
C0153880 03E00008
If the 32-bit value 0x03E00008 is at the address 0x00153880, then activate all following codes. Otherwise, do nothing.
Master-Command Faaaaaaa bbbbbbbb
Master Joker Command E0aabbbb 00xxxxxx


CB7+
All above codes also work on CB7+ here are what are added to it some of below codes may work on other devices and lower vers of CB but are untested on CB1-6..

 

<tbody></tbody>
Code Type Format What it does

<a name="TOC-Increment-Decrement-Commands1"></a>Increment/Decrement Commands

8-bit Increment 300000nn aaaaaaaa This command adds the value specified by nn to the value stored at the address aaaaaaaa .
8-bit Decrement 301000nn aaaaaaaa This command subtracts the value specified by nn to the value stored at the address aaaaaaaa .
16-bit Increment 3020nnnn aaaaaaaa This command adds the value specified by nnnn to the value stored at the address aaaaaaaa .
16-bit Decrement 3030nnnn aaaaaaaa This command subtracts the value specified by nnnn to the value stored at the address aaaaaaaa .
32-bit Increment 30400000 aaaaaaaa
nnnnnnnn 00000000
This command adds the value specified by nnnnnnnn to the value stored at the address aaaaaaaa .
32-bit Decrement 30500000 aaaaaaaa
nnnnnnnn 00000000
This command subtracts the value specified by nnnnnnnn to the value stored at the address aaaaaaaa .

<a name="TOC-Test-Commands1"></a>Test Commands

16-bit Greater Than : Multiple Skip Ezyyvvvv taaaaaaa A = address to check from
T = type, 0 = equal to, 1 = not equal to,
               2 = Less Than, 3 = Greater Than
V = 16 or 8 bit value
YY = # of codes to skip if condition is false
Z = 0 =16-bit, 1 = 8-bit

<a name="TOC-Pointer-Commands"></a>Pointer Commands

8-bit write 6aaaaaaa 000000vv
0000nnnn iiiiiiii
a = address to load 32-bit base from (25 bit)
v = value to store at base + offset (8/16/32 bit)
n = number of times to point (16 bit)
i = 32-bit offset to add to base (n = 1)
16-bit write 6aaaaaaa 0000vvvv
0001nnnn iiiiiiii
a = address to load 32-bit base from (25 bit)
v = value to store at base + offset (8/16/32 bit)
n = number of times to point (16 bit)
i = 32-bit offset to add to base (n = 1)
32-bit write 6aaaaaaa vvvvvvvv
0002nnnn iiiiiiii
a = address to load 32-bit base from (25 bit)
v = value to store at base + offset (8/16/32 bit)
n = number of times to point (16 bit)
i = 32-bit offset to add to base (n = 1)
Extra pointer line 3rd line Example 2:
602829D8 FFFFFFFF
00020002 0000071C
0000FB20 00000000
- loads base at address 0x002829D8, say base is 0x00290000
- adds offset 0x0000071C to make address 0x0029071C
- loads base at address 0x0029071C, say base is 0x002A0000
- adds offset 0x0000FB20 to make address 0x002AFB20
- stores 32-bit value 0xFFFFFFFF to address 0x002AFB20

Note that execution stops, if (base & 0x3FFFFFFC) == 0.

<a name="TOC-Boolean-Commands-Code-type-7-"></a>Boolean Commands  (Code type 7)

8-bit OR 7aaaaaaa 000000vv a = address (25 bit)
8-bit AND 7aaaaaaa 000200vv v = value (8/16 bit)
8-bit XOR 7aaaaaaa 000400vv Performs a bitwise logical operation between given value, v, and the value stored at
16-bit OR 7aaaaaaa 0001vvvv given address, a. (Example:)
16-bit AND 7aaaaaaa 0003vvvv 7048D402 005014A9
16-bit XOR 7aaaaaaa 0005vvvv 0x14A9 is XORed to the 16-bit value at address 0x0048D402.

<a name="TOC-Miscellaneous-Commands1"></a>Miscellaneous Commands

Copy Bytes 5aaaaaaa nnnnnnnn
bbbbbbbb 00000000
a = Address to copy from
b = Address to copy to
n = Number of bytes to copy
32-bit Multi-Address Write 4aaaaaaa xxxxyyyy
dddddddd 00000000
Starting with the address specified by aaaaaaa, this

code will write to xxxx addresses. The next address is determined by incrementing the current address by (yyyy * 4). The value specified by dddddddd is written to each calculated address. Also known as a "Patch

Code."
32-bit Multi-Address Write/Value increase (GS/CB6+) 4aaaaaaa xxxxyyyy
dddddddd IIIIIIII
Same As above but the I = size of value step (32 bit) as in how much it will count up on each address..
Example
4099A20C 00060002
00000000 00100000
- writes 0x00000000 to 0x0099A20C
- writes 0x00100000 to 0x0099A214
- writes 0x00200000 to 0x0099A21C
- writes 0x00300000 to 0x0099A224
- writes 0x00400000 to 0x0099A22C
- writes 0x00500000 to 0x0099A234

<b>ARMAX Code Types</b>

<tbody> </tbody>

Top line
(Line that is auto Generated)

aaaabbbb bcteeeee

A= Game ID
B= Code ID
C= Code/Game Region
T= Top Line Type
E= Expansion Data
Standard Code format  for Armax abxxxxxx yyyyyyyy When generally written in this way, it interprets as the fallowing.
Address part
ab000000 + address
It becomes. concrete -- for example
[C4]xxxxxx yyyyyyyy
Say the address u are trying to make into the code is 00123456.
C4000000 + 00123456 = C4 123456
in the case of it being a high end address like this 01234567,.
C4000000 + 01234567 = C5 234567
since the address u are using is 7 numbers long u would Add to the B section of the code..
<tbody> </tbody>
Code Type Format What it does

<a name="TOC-Write-Commands"></a>Write Commands

8-bit Constant Write 00aaaaaa 000000dd This command will constantly write the value specified by dd to the address specified by aaaaaa
16-bit Constant Write 02aaaaaa 0000dddd This command will constantly write the value specified by dddd to the address specified by aaaaaa
32-bit Constant Write 04aaaaaa dddddddd This command will constantly write the value specified by dddddddd to the address specified by aaaaaaa

<a name="TOC-Multi-Skip-Increments"></a>Multi Skip/Increments

8bit Multi Skip/Increments 00000000 80xxxxxx
000000zz iiaacccc
X = Address
Z = Value
I = Increment (Value)
A = Amount of lines this code affects
C

= Increment (Address)  (amount of data to skip between writes. The skip is based on the width of the data being written, so when writing 8 bits the skip is in 8-bit increments; when writing 16 bits, the skip will be

in 16-bit increments and so on. The skip is always at least 1).
16bit Multi Skip/Increments 00000000 82xxxxxx
0000zzzz iiaacccc
Examples:
00000000 80123456    
00000001 01020001
=
00123456 00000001
00123457 00000002
32bit Multi Skip/Increments 00000000 84xxxxxx
zzzzzzzz iiaacccc
Note

remember that 8bits 1=1, 16bits 2=1, 32bits 4=1 remember that when

making the amount of lines and the Increments (Address) Section
8-bit Multi Writes 00aaaaaa iiiiiidd A= Address
I  = Increment (Address) (remember 8bit 1=1 16bit 1=2
D = Starter Value
Example:
16-bit Multi Writes 02aaaaaa iiiidddd 00123456 00000201
Will do this in game
00123456 00000001
00123457 00000001
00123458 00000001

<a name="TOC-Increment-Decrement-Commands2"></a>Increment/Decrement Commands

8-bit Increment 80aaaaaa 000000nn This command adds the value specified by nn to the value stored at the address aaaaaaaa .
8-bit Decrement
(Signed)
80aaaaaa 000000nn This command subtracts the value specified by nn to the value stored at the address aaaaaaaa .
16-bit Increment 82aaaaaa 0000nnnn This command adds the value specified by nnnn to the value stored at the address aaaaaaaa .
16-bit Decrement
(Signed)
82aaaaaa 0000nnnn This command subtracts the value specified by nnnn to the value stored at the address aaaaaaaa .
32-bit Increment 84aaaaaa nnnnnnnn This command adds the value specified by nnnnnnnn to the value stored at the address aaaaaaaa .
32-bit Decrement (Signed) 84aaaaaa nnnnnnnn This command subtracts the value specified by nnnnnnnn to the value stored at the address aaaaaaaa .
Notes:: (Decrements Signed) A signed Decrement means that u will

have to use the FFFFFFFF route to do this u take the windows Calculator put in what u want and press the +/- Button then press = This will give

u the signed Decrement value.. Example: 20 +/- = FFFFFFFFFFFFFFE0
just chop it down to whatever Decrement u are using
8bit = E0, 16 bit = FFE0 ect

<a name="TOC-Test-Commands2"></a>Test Commands

8-bit Equal 08xxxxxx 000000zz Only when the value at the address specified by xxxxxx is equal to the value specified by zz will the next line of code be executed.
8-bit Not Equal 10xxxxxx 000000zz Only when the value at the address specified by xxxxxx is not equal to the value specified by zz will the next line of code be executed.
8-bit Less Than 28xxxxxx 000000zz Only when the value at the address specified by xxxxxx is less than the value specified by zz will the next line of code be executed.
8-bit Greater Than 30xxxxxx 000000zz Only when the value at the address specified by xxxxxx is greater than the value specified by zz will the next line of code be executed.
8-bit Equal : Multiple Skip 48xxxxxx 000000zz Only when the value at the address specified by xxxxxx is equal to the value specified by zz will the next 2 lines of code be executed. Otherwise, they will be skipped.
8-bit Not Equal : Multiple Skip 50xxxxxx 000000zz Only when the value at the address specified by xxxxxx is not equal to the value specified by zz will the next 2 lines of code be executed. Otherwise, they will be skipped.
8-bit Less Than : Multiple Skip 68xxxxxx 000000zz Only when the value at the address specified by xxxxxx is less than the value specified by zz will the next 2 lines of code be executed. Otherwise, they will be skipped.
8-bit Greater Than : Multiple Skip 70xxxxxx 000000zz Only when the value at the address specified by xxxxxx is greater than the value specified by zz will the next 2 lines of code be executed. Otherwise, they will be skipped.
16-bit Equal 0Axxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is equal to the value specified by zzzz will the next line of code be executed.
16-bit Not Equal 12xxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is not equal to the value specified by zzzz will the next line of code be executed.
16-bit Less Than Axxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzz will the next line of code be executed.
16-bit Greater Than 32xxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzz will the next line of code be executed.
16-bit Equal : Multiple Skip 4Axxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is equal to the value specified by zzzz will the next 2 lines of code be executed. Otherwise, they will be skipped.
16-bit Not Equal : Multiple Skip 52xxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is not equal to the value specified by zzzz will the next 2 lines of code be executed. Otherwise, they will be skipped.
16-bit Less Than : Multiple Skip 6Axxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzz will the next 2 lines of code be executed. Otherwise, they will be skipped.
16-bit Greater Than : Multiple Skip 72xxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzz will the next 2 lines of code be executed. Otherwise, they will be skipped.
32-bit Equal 0Cxxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is equal to the value specified by zzzzzzzz will the next line of code be executed.
32-bit Not Equal 14xxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is not equal to the value specified by zzzzzzzz will the next line of code be executed.
32-bit Less Than 2Cxxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzzzzzz will the next line of code be executed.
32-bit Greater Than 34xxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzzzzzz will the next line of code be executed.
32-bit Equal : Multiple Skip 4Cxxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is equal to the value specified by zzzzzzzz will the next 2 lines of code be executed. Otherwise, they will be skipped.
32-bit Not Equal : Multiple Skip 54xxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is not equal to the value specified by zzzzzzzz will the next 2 lines of code be executed. Otherwise, they will be skipped.
32-bit Less Than : Multiple Skip 6Cxxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzzzzzz will the next 2 lines of code be executed. Otherwise, they will be skipped.
32-bit Greater Than : Multiple Skip 74xxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzzzzzz will the next 2 lines of code be executed. Otherwise, they will be skipped.

<a name="TOC-Test-Commands-Signed-"></a>Test Commands (Signed)

8-bit Less Than 18xxxxxx 000000zz Only when the value at the address specified by xxxxxx is less than the value specified by zz will the next line of code be executed.
8-bit Greater Than 20xxxxxx 000000zz Only when the value at the address specified by xxxxxx is greater than the value specified by zz will the next line of code be executed.
8-bit Less Than : Multiple Skip 58xxxxxx 000000zz Only when the value at the address specified by xxxxxx is less than the value specified by zz will the next 2 lines of code be executed. Otherwise, they will be skipped.
8-bit Greater Than : Multiple Skip 60xxxxxx 000000zz Only when the value at the address specified by xxxxxx is greater than the value specified by zz will the next 2 lines of code be executed. Otherwise, they will be skipped.
16-bit Less Than 1axxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzz will the next line of code be executed.
16-bit Greater Than 22xxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzz will the next line of code be executed.
16-bit Less Than : Multiple Skip 5Axxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzz will the next 2 lines of code be executed. Otherwise, they will be skipped.
16-bit Greater Than : Multiple Skip 62xxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzz will the next 2 lines of code be executed. Otherwise, they will be skipped.
32-bit Less Than 1Cxxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzzzzzz will the next line of code be executed.
32-bit Greater Than 24xxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzzzzzz will the next line of code be executed.
32-bit Less Than : Multiple Skip 5Cxxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzzzzzz will the next 2 lines of code be executed. Otherwise, they will be skipped.
32-bit Greater Than : Multiple Skip 64xxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzzzzzz will the next 2 lines of code be executed. Otherwise, they will be skipped.

<a name="TOC-Test-Commands-Codes-On-Off-All"></a>Test Commands Codes On/Off All

8-bit Equal
On
88xxxxxx 000000zz Only when the value at the address specified by xxxxxx is equal to the value specified by zz will the next lines of code be executed.
8-bit Not Equal
On
90xxxxxx 000000zz Only when the value at the address specified by xxxxxx is not equal to the value specified by zz will the next lines of code be executed.
8-bit Less Than
On
A8xxxxxx 000000zz Only when the value at the address specified by xxxxxx is less than the value specified by zz will the next lines of code be executed.
8-bit Greater Than
On
B0xxxxxx 000000zz Only when the value at the address specified by xxxxxx is greater than the value specified by zz will the next lines of code be executed.
8-bit Equal : Off C8xxxxxx 000000zz Only when the value at the address specified by xxxxxx is equal to the value specified by zz will the next Bunch of lines be Deactivated. Otherwise, they will be executed .
8-bit Not Equal : Off D0xxxxxx 000000zz Only when the value at the address specified by xxxxxx is not equal to the value specified by zz will the next Bunch of lines be Deactivated. Otherwise, they will be executed .
8-bit Less Than : Off E8xxxxxx 000000zz Only when the value at the address specified by xxxxxx is less than the value specified by zz will the next Bunch of lines be Deactivated. Otherwise, they will be executed
8-bit Greater Than : Off F0xxxxxx 000000zz Only when the value at the address specified by xxxxxx is greater than the value specified by zz will the next Bunch of lines be Deactivated. Otherwise, they will be executed .
16-bit Equal
On
8Axxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is equal to the value specified by zzzz will the next lines of code be executed.
16-bit Not Equal
On
92xxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is not equal to the value specified by zzzz will the next lines of code be executed.
16-bit Less Than
On
AAxxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzz will the next lines of code be executed.
16-bit Greater Than
On
B2xxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzz will the next lines of code be executed.
16-bit Equal : Off CAxxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is equal to the value specified by zzzz will the next Bunch of lines be Deactivated. Otherwise, they will be executed .
16-bit Not Equal : Off D2xxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is not equal to the value specified by zzzz will the next 2 lines of code be executed. Otherwise, they will be executed
16-bit Less Than : Off EAxxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzz will the next Bunch of lines be Deactivated. Otherwise, they will be executed .
16-bit Greater Than : Off F2xxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzz will the next Bunch of lines be Deactivated. Otherwise, they will be executed 
32-bit Equal
On
8Cxxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is equal to the value specified by zzzzzzzz will the next lines of code be executed.
32-bit Not Equal
On
94xxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is not equal to the value specified by zzzzzzzz will the next line of code be executed.
32-bit Less Than
On
ACxxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzzzzzz will the next lines of code be executed.
32-bit Greater Than
On
B4xxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzzzzzz will the next lines of code be executed.
32-bit Equal : Off CCxxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is equal to the value specified by zzzzzzzz will the next Bunch of lines be Deactivated. Otherwise, they will be executed .
32-bit Not Equal : Off D4xxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is not equal to the value specified by zzzzzzzz will the next Bunch of lines be Deactivated. Otherwise, they will be executed .
32-bit Less Than : Off ECxxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzzzzzz will the next Bunch of lines be Deactivated. Otherwise, they will be executed .
32-bit Greater Than : Off F4xxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzzzzzz will the next Bunch of lines be Deactivated. Otherwise, they will be executed

<a name="TOC-Test-Commands-Codes-On-Off-All-Signed-"></a>Test Commands Codes On/Off All (Signed)

8-bit Less Than
On
98xxxxxx 000000zz Only when the value at the address specified by xxxxxx is less than the value specified by zz will the next lines of code be executed.
8-bit Greater Than
On
A0xxxxxx 000000zz Only when the value at the address specified by xxxxxx is greater than the value specified by zz will the next lines of code be executed.
8-bit Less Than : Off D8xxxxxx 000000zz Only when the value at the address specified by xxxxxx is less than the value specified by zz will the next Bunch of lines be Deactivated. Otherwise, they will be executed
8-bit Greater Than : Off E0xxxxxx 000000zz Only when the value at the address specified by xxxxxx is greater than the value specified by zz will the next Bunch of lines be Deactivated. Otherwise, they will be executed .
16-bit Less Than
On
9Axxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzz will the next lines of code be executed.
16-bit Greater Than
On
A2xxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzz will the next lines of code be executed.
16-bit Less Than : Off DAxxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzz will the next Bunch of lines be Deactivated. Otherwise, they will be executed .
16-bit Greater Than : Off E2xxxxxx 0000zzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzz will the next Bunch of lines be Deactivated. Otherwise, they will be executed 
32-bit Less Than
On
9Cxxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzzzzzz will the next lines of code be executed.
32-bit Greater Than
On
A4xxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzzzzzz will the next lines of code be executed.
32-bit Less Than : Off DCxxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is less than the value specified by zzzzzzzz will the next Bunch of lines be Deactivated. Otherwise, they will be executed .
32-bit Greater Than : Off E4xxxxxx zzzzzzzz Only when the value at the address specified by xxxxxx is greater than the value specified by zzzzzzzz will the next Bunch of lines be Deactivated. Otherwise, they will be executed

<a name="TOC-Pointer-Commands1"></a>Pointer Commands

8-bit write 40xxxxxx yyyyyyzz x = address to load 32-bit base from (25 bit)
z = value to store at base + offset (8/16/32 bit)
y = number of times to point (16 bit)
16-bit write 42xxxxxx yyyyzzzz x = address to load 32-bit base from (25 bit)
z = value to store at base + offset (8/16/32 bit)
y = number of times to point (16 bit)
32-bit write 44xxxxxx zzzzzzzz x = address to load 32-bit base from (25 bit)
z = value to store at base + offset (8/16/32 bit)
y = number of times to point (16 bit)

<a name="TOC--"></a>?????

8-bit OR    
8-bit AND    
8-bit XOR    
16-bit OR    
16-bit AND    
16-bit XOR    

<a name="TOC-Miscellaneous-Commands2"></a>Miscellaneous Commands

8bit Multi Skip/Increments 00000000 80xxxxxx
000000zz iiaacccc
X = Address
Z = Value
I = Increment (Value)
A = Amount of lines this code affects
C

= Increment (Address)(amount of data to skip between writes. The skip is based on the width of the data being written, so when writing 8 bits the skip is in 8-bit increments; when writing 16 bits, the skip will be

in 16-bit increments and so on. The skip is always at least 1).
16bit Multi Skip/Increments 00000000 82xxxxxx
0000zzzz iiaacccc
Examples:
00000000 80123456    
00000001 01020001
=
00123456 00000001
00123457 00000002
32bit Multi Skip/Increments 00000000 84xxxxxx
zzzzzzzz iiaacccc
Note

remember that 8bits 1=1, 16bits 2=1, 32bits 4=1 remember that when

making the amount of lines and the Increments (Address) Section
8-bit Multi Writes 00aaaaaa iiiiiidd A= Address
I  = Increment (Address) (remember 8bit 1=1 16bit 1=2
D = Starter Value
Example:
16-bit Multi Writes 02aaaaaa iiiidddd 00123456 00000201
Will do this in game
00123456 00000001
00123457 00000001
00123458 00000001

<a name="TOC-Master-Commands"></a>Master Commands

Master-Command C4xxxxxx 000wyy0z xxxxxxx is an address over which a hook is covered.

The pattern of a hook is changeable by w.
When w is 1, it is thread use (set z to 1).
When w is 2, it is Intc interruption use (set z to 1).
When w is 0, 3, 8, 9, and a and b, a hook is covered over Address xxxxxxx (z is 0)
When w is c, a hook is covered over Address xxxxxxx.(z is 0)

By

the default, although eight codes are processed about one hook processing, this can be changed into the number specified by yy.

Usually, yy is set to 08.

Credit to
[1]https://sites.google.com/site/azagthoth0677/ps2commands
[2]https://web.archive.org/web/20080116023725/http://hellion00.thegfcc.com/
Codemasters-Projects (CMP)
Xploder Freaxs (XFX)</span>