Difference between revisions of "Code Types"
From Wiki - GameHacking.org
(→'''Codebreaker Advance''') |
|||
Line 145: | Line 145: | ||
==='''Codebreaker Advance'''=== | ==='''Codebreaker Advance'''=== | ||
---- | ---- | ||
+ | {| style="border:1px solid #000000; margin: 0; padding:0;" width="100%" cellspacing="0" cellpadding="5"" | ||
+ | ! Type !! Description !! Example !! Other | ||
+ | |- align="center" style="font-size: 105%; background-color:#cedff2; text-align: center; padding:0;" | ||
+ | ! 0 | ||
+ | | Master Code 1 || 0000XXXX YYYY <br> XXXX is the CRC value (the "Game ID" converted to hex) <br> Flags ("yyyy"): <br> 0008 - CRC Exists (CRC is used to autodetect the inserted game) <br> 0002 - Disable Interupts || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#d0d8e0; text-align: center; padding:0;" | ||
+ | ! 1 | ||
+ | | Master Code 2 || 1XXXXXXX YYYZ <br> 'Z' is the CBA Code Handler Store Address (0-7) [address = ((d << 0x16) + 0x08000100)] <br> YYY: <br> 100 - 32-bit Long-Branch Type (Thumb) <br> 200 - 32-bit Long-Branch Type (ARM) <br> 300 - 8-bit(?) Long-Branch Type (Thumb) <br> 400 - 8-bit(?) Long-Branch Type (ARM) <br> 002 - Unknown (Odd Effect) <br> XXXXXXX = ? || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#cedff2; text-align: center; padding:0;" | ||
+ | ! 2 | ||
+ | | 16-bit bitwise OR || 2XXXXXXX YYYY <br> XXXXXXX = Address <br> YYYY = Value to OR with || Tested on VBA, not tested on hardware | ||
+ | |- align="center" style="font-size: 105%; background-color:#d0d8e0; text-align: center; padding:0;" | ||
+ | ! 3 | ||
+ | | 8-bit RAM Write || 3XXXXXXX 00YY <br> XXXXXXX = Address <br> YY = Value to write || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#cedff2; text-align: center; padding:0;" | ||
+ | ! 4 | ||
+ | | serial repeater || 4qqqqqqq xxyy <br> XXYY#### ++++ <br> qqqqqqq=Address to Start At <br> xxyy = Start Value <br> XXYY = Add To Value <br> #### = Number of Address Iterations <br> ++++ = Amount Added to each Address Iteration || XXYY portion tested in VBA, not tested on hardware | ||
+ | |- align="center" style="font-size: 105%; background-color:#d0d8e0; text-align: center; padding:0;" | ||
+ | ! 5 | ||
+ | | Unknown || Unknown || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#cedff2; text-align: center; padding:0;" | ||
+ | ! 6 | ||
+ | | 16-bit bitwise AND || 6XXXXXXX YYYY <br> XXXXXXX = Address <br> YYYY = Value to AND with || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#d0d8e0; text-align: center; padding:0;" | ||
+ | ! 7 | ||
+ | | 16-bit equal-to trigger || 7XXXXXXX YYYY <br> Activates next code if address XXXXXXX is equal to YYYY || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#cedff2; text-align: center; padding:0;" | ||
+ | ! 8 | ||
+ | | 16-bit RAM Write || 8XXXXXXX YYYY <br> XXXXXXX = Address <br> YYYY = Value to write || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#d0d8e0; text-align: center; padding:0;" | ||
+ | ! 9 | ||
+ | | Change Encryption Seeds (if used as first code) || 9YYYYYYY YYYY <br> Details not researched || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#cedff2; text-align: center; padding:0;" | ||
+ | ! A | ||
+ | | 16-bit not-equal-to trigger || AXXXXXXX YYYY <br> Activates next code if address XXXXXXX is not equal to YYYY || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#d0d8e0; text-align: center; padding:0;" | ||
+ | ! B | ||
+ | | Unknown || Unknown || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#cedff2; text-align: center; padding:0;" | ||
+ | ! C | ||
+ | | Unknown || Unknown || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#d0d8e0; text-align: center; padding:0;" | ||
+ | ! D | ||
+ | | Unknown || Unknown || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#cedff2; text-align: center; padding:0;" | ||
+ | ! E | ||
+ | | Unknown || Unknown || NA | ||
+ | |- align="center" style="font-size: 105%; background-color:#d0d8e0; text-align: center; padding:0;" | ||
+ | ! F | ||
+ | | Unknown || Unknown || NA | ||
+ | |||
+ | |} | ||
==='''GameShark Advance (Interact)'''=== | ==='''GameShark Advance (Interact)'''=== |
Revision as of 21:51, 15 January 2007
Explanation of what a code type is, and what they're used for here..
Playstation Systems
Playstation 2
Code Breaker
GameShark (Interact)
GameShark (Mad Catz)
Xploder
Playstation
Gameshark
Type | Description | Example | Other |
---|---|---|---|
30 | 8-bit constant write | 3XXXXXXX 00YY Writes YY to Address XXXXXXX |
NA |
80 | 16-bit constant write | 8XXXXXXX ZZYY Writes ZZYY to Address XXXXXXX |
NA |
50 | serial repeater | 5000XXYY 00ZZ TTTTTTTT VVVV Writes XX codes, with YY added to the address for each code after TTTTTTTT, and ZZZZ added to the amount for each code after value VVVV |
Gameshark 2.2 and higher. May need to seperate pairs of serial codes with a 00000000 0000 code for disk-based gamesharks |
E0 | 8-bit equal-to trigger | E0XXXXXX 00YY Activates next code if address 80XXXXXX is equal to YY |
Gameshark 2.2 and higher. |
E1 | 8-bit different-from trigger | E1XXXXXX 00YY Activates next code if address 80XXXXXX is different from YY |
Gameshark 2.2(?) and higher. |
E2 | 8-bit less-than trigger | E2XXXXXX 00YY Activates next code if address 80XXXXXX is less than YY |
Gameshark 2.2 and higher. |
E3 | 8-bit greater-than trigger | E3XXXXXX 00YY Activates next code if address 80XXXXXX is greater than YY |
Gameshark 2.2 and higher. |
D0 | 16-bit equal-to trigger | D0XXXXXX YYYY Activates next code if address 80XXXXXX is equal to YYYY |
NA |
D1 | 16-bit different-from trigger | D1XXXXXX YYYY Activates next code if address 80XXXXXX is different from YYYY |
Gameshark 2.2 and higher. |
D2 | 16-bit less-than trigger | D2XXXXXX YYYY Activates next code if address 80XXXXXX is less than YYYY |
Gameshark 2.2 and higher. |
D3 | 16-bit greater-than trigger | D3XXXXXX YYYY Activates next code if address 80XXXXXX is greater than YYYY |
Gameshark 2.2 and higher. |
D4 | 16-bit universal joker | D4000000 YYYY Activates next code if the button presses equate to YYYY |
Gameshark 2.41 and higher. Needs a button chart |
D5 | 16-bit codes-on trigger | D5000000 YYYY Activates all codes if buton presses equate to YYYY |
Gameshark 2.41 and higher. Needs a button chart |
D6 | 16-bit codes-off trigger | D6000000 YYYY Activates all codes if buton presses equate to YYYY |
Gameshark 2.41 and higher. Needs a button chart |
10 | 16-bit incrementer | 10XXXXXX YYYY Increments value at address 80XXXXXX by YYYY |
Gameshark 2.2 and higher. Use with a joker |
11 | 16-bit decrementer | 11XXXXXX YYYY Decrements value at address 80XXXXXX by YYYY |
Gameshark 2.2 and higher. Use with a joker |
20 | 8-bit incrementer | 20XXXXXX 00YY Increments value at address 80XXXXXX by YY |
Gameshark 2.2 and higher. Use with a joker |
21 | 8-bit decrementer | 21XXXXXX 00YY Decrements value at address 80XXXXXX by YY |
Gameshark 2.2 and higher. Use with a joker |
C0 | enable all codes trigger | C0XXXXXX YYYY If value at address 80XXXXXX is equal to YYYY, enable all loaded codes in game. Affects all codes, not just the one this line is used in. |
Gameshark 2.41 or higher. |
C1 | codes-on delay | C1000000 YYYY Delays codes from being on by YYYY time when game starts. 4000-5000 should give 20-30 seconds. |
NA |
C2 | copy memory | C2XXXXXX YYYY 80ZZZZZZ 0000 Copy YYYY bytes from 80XXXXXX to 80ZZZZZZ. Could be used for copying large sets of complex character stats from one character to another, like working-magic-only, if serial repeater won't work |
NA |
Xploder/Codebreaker
Type | Description | Example | Other |
---|---|---|---|
30 | 8-bit constant write | 3XXXXXXX 00YY Writes YY to Address XXXXXXX |
NA |
80 | 16-bit constant write | 8XXXXXXX ZZYY Writes ZZYY to Address XXXXXXX |
NA |
70 | 16-bit equal-to trigger | 70XXXXXX YYYY Activates next code if address 80XXXXXX is equal to YYYY |
NA |
Action Replay
Gold Finger
Caetla
Nintendo Systems
GameCube
Action Replay
Nintendo 64
GameShark
GameBoy Advance
Codebreaker Advance
Type | Description | Example | Other |
---|---|---|---|
0 | Master Code 1 | 0000XXXX YYYY XXXX is the CRC value (the "Game ID" converted to hex) Flags ("yyyy"): 0008 - CRC Exists (CRC is used to autodetect the inserted game) 0002 - Disable Interupts |
NA |
1 | Master Code 2 | 1XXXXXXX YYYZ 'Z' is the CBA Code Handler Store Address (0-7) [address = ((d << 0x16) + 0x08000100)] YYY: 100 - 32-bit Long-Branch Type (Thumb) 200 - 32-bit Long-Branch Type (ARM) 300 - 8-bit(?) Long-Branch Type (Thumb) 400 - 8-bit(?) Long-Branch Type (ARM) 002 - Unknown (Odd Effect) XXXXXXX = ? |
NA |
2 | 16-bit bitwise OR | 2XXXXXXX YYYY XXXXXXX = Address YYYY = Value to OR with |
Tested on VBA, not tested on hardware |
3 | 8-bit RAM Write | 3XXXXXXX 00YY XXXXXXX = Address YY = Value to write |
NA |
4 | serial repeater | 4qqqqqqq xxyy XXYY#### ++++ qqqqqqq=Address to Start At xxyy = Start Value XXYY = Add To Value #### = Number of Address Iterations ++++ = Amount Added to each Address Iteration |
XXYY portion tested in VBA, not tested on hardware |
5 | Unknown | Unknown | NA |
6 | 16-bit bitwise AND | 6XXXXXXX YYYY XXXXXXX = Address YYYY = Value to AND with |
NA |
7 | 16-bit equal-to trigger | 7XXXXXXX YYYY Activates next code if address XXXXXXX is equal to YYYY |
NA |
8 | 16-bit RAM Write | 8XXXXXXX YYYY XXXXXXX = Address YYYY = Value to write |
NA |
9 | Change Encryption Seeds (if used as first code) | 9YYYYYYY YYYY Details not researched |
NA |
A | 16-bit not-equal-to trigger | AXXXXXXX YYYY Activates next code if address XXXXXXX is not equal to YYYY |
NA |
B | Unknown | Unknown | NA |
C | Unknown | Unknown | NA |
D | Unknown | Unknown | NA |
E | Unknown | Unknown | NA |
F | Unknown | Unknown | NA |
GameShark Advance (Interact)
GameShark Advance (Mad Catz)
Action Replay
Nintendo DS
Codebreaker Advance
Sega Systems
Dreamcast
GameShark CDX