Home Page

GT2 Codes

More GT2 codes

Advanced codes

Prize car list

Code info

GT2 code Links

My Photo Page

Code info.
This page is mainly about codes & how they work.



GT2 Joker commands;

1.0 disc;
Player 1............Player 2
In Race
D00A9228 ???? D00A92D8 ????
D00A9280 ???? D00A9330 ????
Menu Screen
D01FFD24 ???? D01FFD88 ????
D01FFDDC ???? D01FFDEC ????


1.1 disc;
Player 1.............Player 2
In Race
D00A92D8 ???? D00A9388 ????
D00A9330 ???? D00A93E0 ????
Menu Screen
D01FFD2C ???? D01FFD90 ????
D01FFDE4 ???? D01FFDF4 ????


1.2 disc;
Player 1............Player 2
In Race
D00A9538 ???? D00A95E8 ????
D00A9590 ???? D00A9640 ????
Menu Screen
D01FFD24 ???? D01FFD88 ????
D01FFDDC ???? D01FFDEC ????

???? Buttons
0001 D-pad up
0002 D-pad down
0004 D-pad left
0008 D-pad right
0010 L-1
0020 L-2
0040 L-3(push left joystick in)
0100 Triangle
0200 X
0400 Square
0800 O
1000 R-1
2000 R-2
4000 R-3(push right joystick in)

I couldnt find the digits for the Select button.

==================================================

THIS INFO BELOW IS NOT ONLY FOR GT2 CODES, IT'S ABOUT ALL GAMES IN GENERAL.

Code Types - Technical Manual

PlayStation Action Replay 3, GameShark 3 and GameBuster 3
New version 2 board software (with tiled background).

Document version 1.33 (22nd June 1999)


Introduction
This manual explains all the available code types for Action Replay (English, Japanese, French), GameShark and Game Buster version 3 cartridges.

Version 3 cartridge owners will have been told about the standard code type "80000000". This document details this and all other code types available.

Versions of GameSharks 2.41 and above support all codes in this document.
Versions of UK Action Replay, German GameBuster and French Action Replay 2.8 and above support all codes in this document.
Versions of Japanese Action Replay 2.5 above support all codes in this document.


Quick Tips:
You will find that when you start a game with codes active, the codes themselves do not start to be executed until about 5-10 seconds into the game loading. This is useful for loading games, but you may want to test your codes before this period. A simple way to get the codes executing straight away (as soon as you click "Start game with codes") is to have the code "C1000000 0000" in your code list. For an explanation see the "C1" code definition in this document.

Also, you can tell if codes are actually being executed or if you are in this 5-10 second delay period by pressing the cartridge button and looking at the "in-game-menu". The first option in the "in-game-menu" reads "Codes On. If codes are being executed and "Codes On if they are not (there is a full stop at the end of the string "Codes On).

If you are distributing codes, please remember that some of the code types below are for version 3 owners only. The first section lists codes which will work on version 2's and above. The version 3 codes are listed in the section following this.

Have a look at the new D4 code type (for newer versions only). This code type allows you to assign codes to joypad presses, e.g. "restore health when SELECT+X are pressed".

Standard Code Types

Code types that now exist in Version 2.00 and above


80
This is the most common code. It simply writes the given 16 bit value to the given memory location.

Example: The word value 2067 is repeatedly written to memory location 80100204.

80100204 2067


30
Byte code. Same as 80 code but only affects the byte at the given address (odd or even address).

Example: The byte value 67 is repeatedly written to the memory location 80100205

30100205 0067


10
Increment word code (add 1 to), only use with a D/E code, increments the current word in location supplied by value supplied.

Example: Add 5 to the location 80001230 when the location 80001230 is equal to 0001

D0001230 0001
10001230 0005


11
Decrement word code (subtract 1 from), only use with a D/E code, decrements the current word in location supplied by value supplied.

Example: Subtract 5 to the location 80001230 when the location 80001230 is equal to 0006

D0001230 0006
10001230 0005


20
Increment byte code, only use with a D/E code, increments the current byte in location supplied by value supplied.

Example: Add 5 to the byte location 80001230 when the location 80001230 is equal to 0001

D0001230 0001
20001230 0005

21
Decrement byte code, only use with a D/E code, decrements the current byte in location supplied by value supplied.

Example: Subtract 5 to the byte location 80001230 when the location 80001230 is equal to 0006

D0001230 0006
20001230 0005



50
Serial code use with 80/30 codes. Saves using 2 or more codes to update consecutive memory locations.

The code starts with the 50 code. This contains the number of repeats and the size of the code to write (1 for byte, 2 for words). You can also specify a value to increase by on each repeat.

5000RR00 0000 ;RR is the number of repeats

5000000S 0000 ;S is the size. 2 for words, 1 for bytes (use 2 with 80 codes and 1 with 30 codes). This value is added to the code address each repeat. So if the code after the 5 code was an 80000000 and this value was 2 - each loop the address would be 80000000, then 80000002, then 80000004, etc. If this S value was 4 the addresses would be 80000000, then 80000004, then 80000008, etc. Note that with 80000000 codes this S value must be even (2,4,6,8,A,C), with 30000000 codes which work on bytes this S value can be any number from 1 to F.

50000000 IIII ; IIII is the value to increase the written value by (optional). If this value is say 4, and the code is 80000000 0000 - the first write will be 80000000 0000, the second 80000002 0004, the third 80000004 0008, etc.


eg. 50000602 0000
80123456 00ff

is equivilent to

80123456 00ff
80123458 00ff
8012345a 00ff
8012345c 00ff
8012345e 00ff
80123460 00ff

eg. 50000602 0001
80123456 0000

is equivilent to

80123456 0000
80123458 0001
8012345a 0002
8012345c 0003
8012345e 0004
80123460 0005


D0
If word value in location supplied is the same as value supplied do the next code.
This code is useful if you only want to execute certain codes at certain points in the game (like on certain levels, or only when the game has fully loaded).

Example: If the memory location 8008030C holds the value 01FE then do the code 80100204 0067, otherwise do nothing.

D008030C 01FE
80100204 0067


D1
If word value in location supplied is different to the value supplied do the next code


D2
If word value in location supplied is less than the value supplied do the next code


D3
If word value in location supplied is more than the value supplied do the next code


E0
If byte value in location supplied is the same as value supplied do the next code


E1
If byte value in location supplied is different to the value supplied do the next code


E2
If byte value in location supplied is less than the value supplied do the next code


E3
If byte value in location supplied is more than the value supplied do the next code



New Code Types


The following codes are new to all versions 3.x. Also available in newer version 2 software (US 2.41+, UK 2.8+, JAP 2.5+).


Must Be On / Master Codes
If a code name starts with the text "(M)" or "(m)" then that code is always on.

The user cannot switch it off. See the codes for "Gran Turismo" for an example. This has a Must Be On code that disables the JoyPad toggle feature. If the JoyPad toggle is not disabled for this game - it won't load (note that this is so far the only game that requires this).


D4 (No effect on V1.00/V2.00).

Joypad D code. if joypad press equals word value do the next code.

Table of JoyPad values
Up (1000)
Right (2000)
Down (4000)
Left (8000)
Triangle (0010)
O (0020)
X (0040)
Square (0080)
Select (0100)
Start (0800)

L1 (0004)
R1 (0008)
L2 (0001)
R2 (0002)
Add combinations. E.g. Select+L1 == 0100+0004 == 0104

For example, the code "80000000 1234" will be on when the user presses
Select and X at the same time:

D4000000 0140
80000000 1234

Also note: To combine different button presses, simply add the button values together. The value for O and X buttons would be 0020 added with 0040, hence 0060. And remember these are in Hex, so Square and X would be 0080+0040 = 00C0.


D5 (No effect on V1.00/V2.00).
All codes on. If joypad press equals word value, all codes on.

Please read the subject "Joypad Toggle" on turning codes on and off for more information.

This "turn codes on/off" feature is permanently available in all games and defaults to “SELECT+L1+R1" for on and “SELECT+L2+R2"‚ for off. The D5 and D6 codes are available if you need to change the buttons used or disable them.

If the value given if zero (D5000000 0000 or D6000000 0000) then joypad functions are disabled (same as "joypad toggle disabled" in the options screen). I've allowed you to disable this as we found the game "Gran Turismo" failed to load when this function was active. Just in case there is another game that does this, this code is available.

Example: To make codes turn on when you press START and O together. The following code should be used: (Start = 0800 and O = 0020, 0800+0020=0820).

D5000000 0820


D6 (No effect on V1.00/V2.00).
All codes off. if joypad press equals word value, all codes off.

See the description for D5 codes.

Example: To make codes turn off when you press START and X together. The following code should be used: (Start = 0800 and X = 0040, 0800+0040=0840).

D5000000 0840



C0 (No effect on V1.00/V2.00).
If word value in location supplied is the same as value, do ALL codes, otherwise don't do any.

A C0 code if the same as a D0 code except it acts on ALL codes. Useful for games that don't load when codes are on. This code should be put in a "Must Be On" "(M)" so people can't turn it off.

For example: If you had a game for which you don't want any codes on until the memory location 801AAAAA contains the value 1234 you could have the following code:

(M) Must be on
C01AAAAA 1234

Having the text (M) at the start of the name of the code makes the code default to ON and the user cannot turn it off in the code list.


C1 (No effect on V1.00/V2.00).
Code on delay time. Delay codes being turned on for a period of time specified by the value part of this code. By default this value is set to 1388 hex (5000 decimal) which waits about 10 seconds before activating the cheats. This can be a useful alternative to a D code for keeping codes off whilst a game loads.

Example: To delay all codes from being turned on for about 30 seconds in most games use the code C1000000 4000. The vaule you use depends on the game you are playing, the value 4000 might be 30 seconds on one game, but may only be 10 seconds on another. The only way is to know for sure is to experiment. You can tell if codes are on or off when by going in to the In Game Menu and looking at the text Codes are ON. If it says Codes are ON then codes are on, if it says Codes are ON.(with a at the end of the string) then codes are actually off until this timer runs out.

Also, it is a good idea to put this code in a code that can't be turned off (i.e. use the text (M) in the name). The example code then becomes:

(M) Must be on
C1000000 4000


C2 (No effect on V1.00/V2.00)

Copy bytes code. This code copy's n bytes from a memory location to another.
The code must be used in pairs of two codes. The first code is the source address, the second is the destination address. The value part of the first code is the number of bytes to copy. The value part of the second code is not used.

Example: Copy 6 bytes from memory location 80010000 to 80010010.
C2010000 0006
80010010 0000

==================================================