复制一份
https://github.com/mbacker80/-PS2-CheatCentral
__ 0 - 8 Bit Constant Write __ 1 - 16 Bit Constant Write __ 2 - 32 Bit Constant Write __ 3 - Increment / Decrement __ 4 - 32-bit Multiple Address Write __ 5 - Copy Bytes __ 6 - Pointer Write __ 7 - 32 Bit Boolean __ 8 - Find and Replace __ 9 - Execute Data __ A - (not implemented) __ B - (not implemented) __ C - (not implemented) __ D - Boolean: Half (Aka: Joker) __ E - Line Specific Boolean: Half (Aka: Line Specific Joker) __ F - Extended Command Structure __ F0 - IOP 8 Bit Constant Write __ F1 - IOP 16 Bit Constant Write __ F2 - IOP 32 Bit Constant Write __ F3 - (not implemented) __ F4 - (not implemented) __ F5 - (not implemented) __ F6 - (not implemented) __ F7 - (not implemented) __ F8 - (not implemented) __ F9 - (not implemented) __ FA - (not implemented) __ FB - (not implemented) __ FC - (not implemented) __ FD - (not implemented) __ FE - (not implemented) __ FF - (not implemented) The information on the command structure: -== Code Command Information ==- 0, 1, 2, F0, F1, F2 -- Constant Writes (0, 1, 2, F0, F1, F2) -- Code Setup (0, 1, 2): CAAAAAAA DDDDDDDD Code Setup (F0, F1, F2): CCAAAAAA DDDDDDDD C - Command A - Address D - Data Description: If not jokered, these codes are constantly writing the given data to the specified address. ------------------------------------- 3 -- Increment / Decrement -- 8 Bit Increment 300000nn aaaaaaaa 8 Bit Decrement 301000nn aaaaaaaa 16 Bit Increment 3020nnnn aaaaaaaa 16 Bit Decrement 3030nnnn aaaaaaaa 32 Bit Increment 30400000 aaaaaaaa nnnnnnnn 00000000 32 Bit Decrement 30500000 aaaaaaaa nnnnnnnn 00000000 a = Address n = Amount To Increase / Decrease Description: Increments or decrements the value contained at the address by the amount of data given every time this code is applied by the cheat engine. ------------------------------------- 4 -- 32 Bit Multiple Address Write -- 4aaaaaaa wwwwssss dddddddd nnnnnnnn a = Starting Address w = Number Of Lines To Write s = Number Of Lines To Skip d = Data To Write n = Ammount To Increase Given Data By Description: Writes the given data to the address specified. It also writes the same data to as many lines specified. The data can be increased for each line, and the number of lines to write can be spaced out rather than being consecutive. ------------------------------------- 5 -- Copy Bytes -- 5fffffff nnnnnnnn tttttttt 00000000 f = Address To Copy From t = Address To Copy To n = Number Of Bytes To Copy Description: Copies the given number of bytes from the first address, and writes those bytes to the second address. ------------------------------------- 6 -- Pointer Write -- Pointer start 6aaaaaaa nnnnnnnn 0600iiii *n 0C00iiii dddddddd FFFFFFFF (Padding if needed, used to prevent null address + data lines) Example 1 (No Padding Needed): 60100000 00000003 06000001 06000001 06000001 02000004 12345678 00000000 Example 2 (Padding Needed): 60100000 00000001 06000001 02000004 00000000 FFFFFFFF (Storing null data will cause us to NEED padding to prevent the double null) a = Starting pointer address n = Number of points c = Write type (8 / 16 / 32 Bit): 1 - Byte 2 - Half 3 - Word d = Data to write Description: Reads the address from the given address, and writes the given data to that address. If more than one pointer are needed, then it will keep reading the address contained at the current address it has loaded for as many pointers specified (n) and write the data to the final address. ------------------------------------- 7 -- 32 Bit Boolean -- 7aaaaaaa dddddddd a = Address to read d = Data to compare Description: Compares the 32 bit data located at the address to the provided 32 bit data in the code. If the values are not equal, the code chunk assigned to this command will not be executed. If the values are equal, then they will. ------------------------------------- 8 -- Find and Replace -- 8 Bit Search 8aaaaaaa 000000ff 000000rr 0000iiii 16 Bit Search 8aaaaaaa 0000ffff 0000rrrr 0010iiii 32 Bit Search 8aaaaaaa ffffffff rrrrrrrr 0020iiii a = Address to start f = Data to find r = Data to replace with i = Search count Description: Searches for the first data, and replaces any matches with the second data. The search count is to limit how much it will search. ------------------------------------- 9 -- Execute Data -- 9fffffff aaaaaaaa f = Address of function (also called a sub routine) a = Argument sent to function (sent in register a0) Description: In basic terms, best method to hook routines without having to find a hook in the game. ------------------------------------- E -- Line Specific Boolean Half -- Eaaaaaaa nnnidddd a = Address to read n = Number of lines assigned to boolean i = Check if equal, or if not equal (0 = equal, 1 = not equal) d = Data to check Description: Checks if the 16 bit data at the address is equal (if i is 0) or not equal (if i is 1) to the 16 bit data given. If the check returns True, then the number of code lines assigned to the boolean will be executed. If the check returns False, then the number of code lines will be skipped.
时间: 2024-10-05 12:32:03