Code Types (Playstation)

From Wiki - GameHacking.org
Revision as of 19:30, 4 October 2015 by MathUser (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Gameshark & Action Replay



Note: For all intents and purposes, PlayStation Action Replay code types are identical to the GameShark ones. Only the device version numbers vary.


Type & Format Description Other Limitations
8-bit Constant Write

3XXXXXXX 00YY
Writes YY to Address XXXXXXX -- --
16-bit Constant Write

8XXXXXXX ZZYY
Writes ZZYY to Address XXXXXXX -- --
Serial Repeater

5000XXYY ZZZZ
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 --
8-bit Equal-To Trigger

E0XXXXXX 00YY
Activates next code if address 80XXXXXX is equal to YY Gameshark 2.2 and higher. 60~, including all Cx and comparison types
8-bit Different-From Trigger

E1XXXXXX 00YY
Activates next code if address 80XXXXXX is different from YY Gameshark 2.2(?) and higher. 60~, including all Cx and comparison types
8-bit Less-Than Trigger

E2XXXXXX 00YY
Activates next code if address 80XXXXXX is less than YY Gameshark 2.2 and higher. 60~, including all Cx and comparison types
8-bit Greater-Than Trigger

E3XXXXXX 00YY
Activates next code if address 80XXXXXX is greater than YY Gameshark 2.2 and higher. 60~, including all Cx and comparison types
16-bit Equal-To Trigger

D0XXXXXX YYYY
Activates next code if address 80XXXXXX is equal to YYYY -- 60~, including all Cx and comparison types
16-bit Different-From Trigger

D1XXXXXX YYYY
Activates next code if address 80XXXXXX is different from YYYY Gameshark 2.2 and higher. 60~, including all Cx and comparison types
16-bit Less-Than Trigger

D2XXXXXX YYYY
Activates next code if address 80XXXXXX is less than YYYY Gameshark 2.2 and higher. 60~, including all Cx and comparison types
16-bit Greater-Than Trigger

D3XXXXXX YYYY
Activates next code if address 80XXXXXX is greater than YYYY Gameshark 2.2 and higher. 60~, including all Cx and comparison types
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 60~, including all Cx and comparison types
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 60~, including all Cx and comparison types
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 60~, including all Cx and comparison types
16-bit Incrementer

10XXXXXX YYYY
Increments value at address 80XXXXXX by YYYY Gameshark 2.2 and higher. Use with a joker 30~ including all in/decrement types
16-bit Decrementer

11XXXXXX YYYY
Decrements value at address 80XXXXXX by YYYY Gameshark 2.2 and higher. Use with a joker 30~ including all in/decrement types
8-bit Incrementer

20XXXXXX 00YY
Increments value at address 80XXXXXX by YY Gameshark 2.2 and higher. Use with a joker 30~ including all in/decrement types
8-bit Decrementer

21XXXXXX 00YY
Decrements value at address 80XXXXXX by YY Gameshark 2.2 and higher. Use with a joker 30~ including all in/decrement types
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. 60~, including all Cx and comparison types
Codes-on Delay

C1000000 YYYY
Delays codes from being on by YYYY time when game starts. 4000-5000 should give 20-30 seconds. -- 60~, including all Cx and comparison types
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 -- 30?
Special 16-bit Write

1F800XXX YYYY
Write YYYY to address 1F800XXX in the scratch pad region. Note that the address range is only from 0x000 to 0x3FF (1024 bytes). GameShark 2.3 and higher. --


All 16-bit comparison types are limited to roughly 60 lines per game. 8-bit comparison types and increment/decrement types are limited to around 30 lines per game combined.

Warning: Limitations info is incomplete. Expect exact limits eventually...

Xploder/Codebreaker/X-Terminator



Note: "T" defines the default on/off setting if this code type is the first line in a code. 0 = On, 8 = Off. This does not apply to all types.


Type & Format Description Other Limitations
8-bit Constant Write

3TXXXXXX 00YY
Writes YY to address 80XXXXXXX -- --
16-bit Constant Write

8TXXXXXX YYYY
Writes YYYY to address 80XXXXXXX -- --
32-bit Constant Write

00XXXXXX YYYY
Writes 0000YYYY to address 80XXXXXX. Doesn't use on/off setting. --
Mass Write (Super code)

5TXXXXXX 0YYY
Writes YYY bytes (from following lines until end of YYY bytes) to address 80XXXXXX. Exact behavior is unknown, may require even addresses only (unconfirmed). --
16-bit Equal-To Trigger

7TXXXXXX YYYY
Activates next code if value at address 80XXXXXX is equal to YYYY -- --
16-bit Not-Equal-To Trigger

9TXXXXXX YYYY
Activates next code if value at address 80XXXXXX is not equal to YYYY -- --
16-bit Equal-To Global Trigger

FTXXXXXX YYYY
 ??? Activates all codes if value at address 80XXXXXX is equal to YYYY Exact behavior of this type is unconfirmed. --
Mega code

6T?????0 YYYY
AAAAAAAA CCCC
FFFFFFFF 0011
22334455 6677
8899
 ?=Don't care
AA= Break address
YY= Count in bytes to insert at location 40
CC= Coprocessor break type (upper half)
FF= Breakpoint mask (usually FFFFFFFF)
00= bytes of code in address order
11
General usage unknown. The document this description was originally pulled from is missing some text. --
Slow Motion

4T000000 XXXX
According to Nachbrenner's document: "A 4 code is a slow motion code. Its success rate is not brilliant at the moment. It is simply a loop executed (XXXX << 12) times." It's likely this causes problems if used. Exact effects are unknown. --


Despite various documents claiming there is a "Datel compatibility" feature with the GS Dx and Cx codes, this has never been proven. In my own testing, in no cases did those types work. There may also be code types of 1, 2, A, and E that are completely undocumented.

Most information here is based off of Nachbrenner's Advanced Xplorer Codes document.


The only known documentation of the code types for this device are at the following links:


Code Types
Consoles
Playstation - Sega Saturn - Dreamcast - Playstation 2 - Game Cube
Portables
Game Boy Advance - Nintendo DS