Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Cheat Code Documentation
#1
Cheat Code Documentation:

NOTE: This is not meant to be a full blown documentation for every code type known for Wii gaming. Meant to be just for MKW cheat codes, aimed to teach the 'beginners'.


04XXXXXX YYYYYYYY: 32 bit code. The Y Values overwrite the default 4 byte RAM value at XXXXXX offset address (code location). These type of codes are the most common. For most 32 bit codes, the Y values can be perma edited onto an ISO/WBFS.

C2XXXXXX 000000YY: 'Insert ASM' code. At offset address XXXXXX a certain amount of code (placed underneath the first line) is inserted into RAM. The amount of lines underneath the 'C2' line designates the YY value (in hex). YY value can be greater than 2 digits but its very rare. Most 'C2' codes end with "60000000 00000000"

60000000 00000000: Known as the 'C2 ender line'. Most 'C2' codes use this line at the end.

283PXXXX YYYYZZZZ: Called the Controller Line. Contains the controller address value (XXXX) and button values (ZZZZ). YYYY is an equation result to allow the ZZZZ button values to be pressed while other buttons are being pressed. P value: 3 for Korean MKWii; 4 for all other versions. If a code contains two controller lines, the first line is also known was the 'activator', and the second line is also known as the 'deactivator'. Sometimes the code w/ default RAM value after the 'deactivator' is also called the 'deactivator' which can lead to people being confused.

E0000000 00000000: The Halfway Terminator. It is placed after a code to allow a secondary controller address w/ code to be added afterwards for deactivation purposes.

E0000000 80008000: Final Terminator: This is needed at the very end for most codes so multiple codes in a GCT file don't conflict.

04XXXXXX 60000000: Called a 'nop'. Only for 32 bit codes.

02XXXXXX 0000YYYY: 16 bit code. The Y values overwrite the 2 byte RAM value at XXXXXX offset address.

00XXXXXX 000000YY: 8 bit code: The Y values overwrite the single byte RAM value at XXXXXX offset address.

48000000 80YYYYYY: Loader into Pointer Address code. YYYYYY is the offset address. You will find this in almost all unlocker codes.

CC000000 00000000: Off/on switch. Sometimes called the 'Repeater Line'. It replaces the use of a Halfway Terminator + Second Controller Line to allow the same button to be used to both activate and deactivate a code.

C0000000 000000YY: Execute ASM. These codes work for all regions. Amount of lines of code underneath first line is the YY value. Do not confuse these codes with what are called 'Region Free' codes.

4E800020 00000000: Final line needed for all 'Execute ASM' codes.

F0000000 00000000: Tells the code handler there are no more codes in the GCT file. If there are any cheat codes after this, they will be rendered useless.

F6000001 80008100: Region-Free/RF designator line. This is the very first line of 99.9% of what are called 'Region Free' codes.

(For RF codes) XXXXXXXX YYYYYYYY: Called the unique hex string. It is the second line in almost all Region Free codes. It tells the code handler to find this 8 byte hex string in RAM.

1400XXXX ZZZZZZZZ: Used in Region Free codes in replacement of a 32 bit code. The XXXX is the value in hex added to the offset address of where the 'unique hex string' is located. The grand final value is the code's offset address which then the value of ZZZZZZZZ is executed at that offset address.

1200XXXX 0000ZZZZ: Same as above but for 16 bit codes.

1000XXXX 000000ZZ: Same as above but for 8 bit codes.

D200XXXX 000000YY: Same as above but for C2 type codes. Remember there will be a certain amount of lines of code underneath this which the amount of lines will be the YY value.



Some examples:

NOTE: Fake/made-up codes are used for these examples


32 bit code:
045678AC 38A00006: The value of 38A00006 replaces whatever 8 byte value is on RAM at offset address 5678AC.

16 bit code:
02453DD2 0000A008: The value of A008 replaces the 4 byte value on RAM at offset address 453DD2.

8 bit code:
00238EF1 000000FF: The value of FF replaces the 2 byte value on RAM at offset address 238EF1

Insert ASM Code:
C24650E8 00000002
3800001E 9012B00B
60000000 00000000: Code after the 1st line is inserted at RAM offset address 4650E8. The '00000002' designates there are 2 lines of code underneath the first line. The second part of the second line '9012B00B' is usually the default RAM value for the offset address.

Halfway Terminators,  Final Terminators, & Controller Lines:
28348200 DFFF2000 <-- First controller line, aka activator
04010ECC 3A200005 <-- 32 bit code
E0000000 00000000 <-- Halfway Terminator
28348200 BFFF4000 <-- Second controller, aka deactivator
04010ECC 97702010 <-- 32 bit code to write default RAM value, can also be called the deactivator. Proper name is 'deactivator code'.
E0000000 80008000 <-- Final Terminator
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)