Editing PS2 Custom Configs

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 15: Line 15:
=== Ape Escape 2 ===
=== Ape Escape 2 ===
{{boxcodelite|title=SCES-50885|ps2configrev=17495|code=
{{boxcodelite|title=SCES-50885|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 0A 00 00 00 02 00 00 00
3D 00 00 00 57 44 00 00 0A 00 00 00 01 00 00 00
E0 E0 34 00 16 00 40 14 00 00 00 00 F0 92 19 00
E0 E0 34 00 16 00 40 14 00 00 00 00 00 00 00 00
03 00 80 14 00 00 00 00
}}
}}


Forces the game to not create mipmaps (it does fix flickering textures) and disables the blue filter used to imitate a depth of field effect in rainy levels and underwater (slowdown fix).
Force game to not create Mipmaps. Fix flickering textures completely.


{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x3D => 0x4457 (17495)
0x0A => 0x2
0x0A => 0x01 (1 Patch to EE memory)
  0x34E0E0
  0x34E0E0, 0x14400016 (bnez loc_0063a0c4), 0x00000000 (nop)
  0x14400016 bne v0,zero,0x34E13C -> 0x00000000 nop
0x1992F0
  0x14800003 bne a0,zero,0x199300 -> 0x00000000 nop
</syntaxhighlight>}}
</syntaxhighlight>}}
=== Ar tonelico games ===
See: [[#Gust Games (Video Game Developer)|Gust Games (Video Game Developer)]]
=== Atelier Iris games ===
See: [[#Gust Games (Video Game Developer)|Gust Games (Video Game Developer)]]


== B ==
== B ==
{{jumptosection|current=B}}
{{jumptosection|current=B}}
=== Baldur's Gate games ===
See: [[#Snowblind Games (Game Engine)|Snowblind Games (Game Engine)]]


=== Blood Omen 2: Legacy of Kain ===
=== Blood Omen 2: Legacy of Kain ===
{{boxcodelite|title=SLES-50771|ps2configrev=4369|code=
{{boxcodelite|title=SLES-50771|ps2configrev=4369|code=
3D 00 00 00 11 11 00 00 0A 00 00 00 01 00 00 00
3D 00 00 00 11 11 00 00 0A 00 00 00 01 00 00 00
30 24 2F 00 06 00 02 45 06 00 00 10
30 24 2F 00 06 00 02 45 06 00 00 10 00 00 00 00
}}
}}


Trick game to not produce mipmaps. Ignore Coprocessor 1 compare result, and branch (likely) always. Fixes graphical issues.
Trick game to not produce mipmaps. Ignore Coprocessor 1 compare result, and branch(likely) always. Fix graphical issues.


{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x1111 (4369)
0x3D => 0x1111 (4369)
0x0A => 0x1
0x0A => 0x01 (1 patch to EE memory)
  0x2F2430
  0x2F2430, 0x45020006 (bc1fl +6), 0x10000006 (b +6)
  0x45020006 bc1fl 0x2F244C -> 0x10000006 beq zero,zero,0x2F244C
</syntaxhighlight>}}
</syntaxhighlight>}}


Line 88: Line 92:
== C ==
== C ==
{{jumptosection|current=C}}
{{jumptosection|current=C}}
=== Champions of Norrath games ===
See: [[#Snowblind Games (Game Engine)|Snowblind Games (Game Engine)]]
=== Combat Elite ===
See: [[#Snowblind Games (Game Engine)|Snowblind Games (Game Engine)]]


=== Crash Bandicoot: Wrath of Cortex ===
=== Crash Bandicoot: Wrath of Cortex ===
Line 97: Line 107:
F4 3C 24 00 14 00 62 14 14 00 00 10 01 00 00 00
F4 3C 24 00 14 00 62 14 14 00 00 10 01 00 00 00
F0 CF 16 00 12 00 00 00 01 00 00 00 90 D3 16 00
F0 CF 16 00 12 00 00 00 01 00 00 00 90 D3 16 00
12 00 00 00 03 00 00 00
12 00 00 00 03 00 00 00 00 00 00 00
}}
}}


Multi-version config (applies to both 1.00 and 1.01 versions). Disables fog, smoke effect and smoothing to improve the frame rate. Additionally, it does hook the function VU1_DmaGetStatus to fix the hang in the pause menu. 0x03 command is unknown - it was just copy pasted straight from the official Finding Nemo config, as the games share similar engine and, therefore, the exact pause menu problem.
Multi-version config (applies to both 1.00 and 1.01 versions). Disables fog, smoke effect and smoothing to improve the frame rate. Additionally, it does hook the function VU1_DmaGetStatus to fix the hang in the pause menu. 0x03 command is unknown - it was just copy pasted straight from the official Finding Nemo config, as the games share similar engine and, therefore, the exact pause menu problem.


{{boxcode|float=left|title=Commands Info|ps2configrev=17495|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|ps2configrev=16454|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x3D => 4457 (17495)
0x44 => (disable smoothing)
0x44 => (disable smoothing)
0x0A => 0x2 (patches for the 1.00 version)
0x0A => 2 (patches for the 1.00 version)
  0x12FE80 (NuRndrFx)
  0x12FE80 (NuRndrFx)
   0x0C04F28C jal 0x13CA30 (NuLightFogDraw) -> 0x00000000 nop
   0x0C04F28C jal 0x13CA30 (NuLightFogDraw) -> 0x00000000 nop
  0x249B54 (LaunchObjects)
  0x249B54 (LaunchObjects)
   0x14620014 bne v1,v0,0x249BA8 -> 0x10000014 beq zero,zero,0x249BA8
   0x14620014 bne v1,v0,0x249BA8 -> 0x10000014 b 0x249BA8
0x0A => 0x2 (patches for the 1.01 version)
0x0A => 2 (patches for the 1.01 version)
  0x1303E8
  0x1303E8
   0x0C04F352 jal 0x13CD48 -> 0x00000000 nop
   0x0C04F352 jal 0x13CD48 -> 0x00000000 nop
  0x243CF4
  0x243CF4
   0x14620014 bne v1,v0,0x243D48 -> 0x10000014 beq zero,zero,0x243D48
   0x14620014 bne v1,v0,0x243D48 -> 0x10000014 b 0x243D48
0x01 => 0x16CFF0 (VU1_DmaGetStatus) lw s0,-0x58E0(gp) -> 0x12 (hook for the 1.00 version)
0x01 => 0x16CFF0 (VU1_DmaGetStatus) lw s0,-0x58E0(gp), 0x12 (hook for the 1.00 version)
0x01 => 0x16D390 lw s0,-0x5958(gp) -> 0x12 (hook for the 1.01 version)
0x01 => 0x16D390 lw s0,-0x5958(gp), 0x12 (hook for the 1.01 version)
0x03 => (sets something 0)
0x03 => (sets something 0)
</syntaxhighlight>}}
=== Crash Twinsanity ===
{{boxcodelite|title=SLUS-20909|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 12 00 00 00 08 00 00 00
00 00 00 04 00 00 00 00 02 00 03 00 00 00 00 00
9B BF 2C B6 00 02 00 00 03 00 01 00 7C 15 2B 10
12 00 00 00 02 00 00 00 03 00 01 00 6C 19 2B 10
0A 00 00 00 03 00 00 00 30 1B 19 00 FB FF 40 54
00 00 00 00 34 1B 19 00 2F 18 71 00 00 00 00 00
38 1B 19 00 2F 10 23 02 00 00 00 00 0A 00 00 00
03 00 00 00 58 1C 19 00 FB FF 40 54 00 00 00 00
5C 1C 19 00 2F 18 71 00 00 00 00 00 60 1C 19 00
2F 10 23 02 00 00 00 00
}}
Multi-version config. First 0x12 command (taken from the GX/SOFT config) does fix the hang on the initial loading screen (VU0 interlock issue, EE execution is stalled). Second 0x12 command does add just a offset for the 2.00 version of the game, having the parameters from the first command still valid.
0x0A commands fix the in-game freezes (random ones or after loading the save). First one is for the 1.00 version, the second one for the 2.00 version. Probably the floating point accuracy issues are causing the subtracting results to deviate, trapping into the condition of branch.
{{boxcode|float=left|title=Commands Info|ps2configrev=17495|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x12 => 0x8
00 00 00 04
00 00 00 00
02 00 03 00 (type 2 subcommand, number of parameters: 3)
  00 00 00 00 (TPC register value)
  9B BF 2C B6 (CRC)
  00 02 00 00
03 00 01 00 (type 3 subcommand, number of parameters: 1)
  7C 15 2B 10 0x2B157C ctc2.i vi00,vi01 (EE memory offset with problematic stall in the 1.00 version)
0x12 => 0x2
03 00 01 00 (type 3 subcommand, number of parameters: 1)
  6C 19 2B 10 0x2B196C ctc2.i vi00,vi01 (EE memory offset with problematic stall in the 2.00 version)
0x0A => 0x3 (patch for the 1.00 version)
0x191B30
  0x5440FFFB bnel v0,zero,0x191B20 -> 0x00000000 nop
0x191B34
  0x0071182F dsubu v1,v1,s1 -> 0x00000000 nop
0x191B38
  0x0223102F dsubu v0,s1,v1 -> 0x00000000 nop
0x0A => 0x3 (patch for the 2.00 version)
0x191C58
  0x5440FFFB bnel v0,zero,0x191C48 -> 0x00000000 nop
0x191C5C
  0x0071182F dsubu v1,v1,s1 -> 0x00000000 nop
0x191C60
  0x0223102F dsubu v0,s1,v1 -> 0x00000000 nop
</syntaxhighlight>}}
</syntaxhighlight>}}


Line 170: Line 133:
{{jumptosection|current=D}}
{{jumptosection|current=D}}


=== Dawn of Mana ===
=== Dynasty Warriors 3 <br>Dynasty Warriors 3: Xtreme Legends ===
*Seiken Densetsu 4
 
{{boxcodelite|title=SLUS-21574, SLPM-66576|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 12 00 00 00 04 00 00 00
00 00 00 00 00 00 00 00 01 00 01 00 0C 00 DF 0D
2F 00 00 00 02 00 00 00
}}
 
Fixes graphical and sound glitches.<br>
This custom config is inspired in [https://github.com/Zarh/Get_CONFIG/blob/master/files/SLUS_215.74.CONFIG the official] from gxemu with an additional command 0x2F to fix the sound glitches
 
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x12 => 0x4
00 00 00 00
00 00 00 00 
01 00 01 00 (type 1 subcommand, number of parameters: 1)
0C 00 DF 0D
0x2F => 0x2 fixes sound reverb glitches
</syntaxhighlight>}}
 
=== Destroy All Humans! ===
{{boxcodelite|title=SLUS-20945|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 0A 00 00 00 01 00 00 00
7C 82 1A 00 03 00 40 14 00 00 00 00 0E 00 00 00
24 BF 28 00 0E 00 00 00 84 C0 28 00 00 00 00 00
}}
 
Skips mipmapping to fix graphical glitches and fixes anal probe bug. Alpha effects are still visible through walls. This fix force exits a mipmapping-related math function, skips its calculations, and stores result as its default non-mipmapped value 1 at all times.
 
{{boxcode|float=left|title=Commands Info|ps2configrev=16454|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x0A => 0x1 (1 patch to EE memory)
0x1A827C (force exits mipmapping function to avoid calculations)
  0x14400003 bnez v0,0x1A828C -> 0x00000000 nop
0x0E => 0x28BF24 sub.s f12,f15,f11 (fix for charged anal probe's enemy reaction)
0x0E => 0x28C084 sub.s f06,f05,f04 (fix for charged anal probe's enemy death)
</syntaxhighlight>}}
 
=== Destroy All Humans! 2 ===
{{boxcodelite|title=SLUS-21439|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 0A 00 00 00 02 00 00 00
18 58 45 00 22 00 A0 05 22 00 00 10 24 8A 35 00
22 00 A0 05 22 00 00 10 00 00 00 00
}}
 
Skips mipmapping to fix graphical glitches. Alpha effects are still visible through walls. Both the 3D objects and 2D foliage mipmapping is force skipped and a mipmap related value is stored as 0 at all times.
 
{{boxcode|float=left|title=Commands Info|ps2configrev=16454|code=<syntaxhighlight lang=bash>
0x3D => 4457 (17495)
0x0A => 0x2 (2 patches to EE memory)
0x455818 (3D objects - force store value of 0 at 0x4558A8)
  0x05A00022 bltz t5,0x4558A4 -> 0x10000022 b 0x4558A4
0x358A24 (2D foliage - similar situation to 3D objects)
  0x05A00022 bltz t5,0x358AB0 -> 0x10000022 b 0x358AB0
</syntaxhighlight>}}
 
=== Dynasty Warriors 3 ===
*Dynasty Warriors 3: Xtreme Legends
{{boxcodelite|title=All|ps2configrev=15753|code=3D 00 00 00 89 3D 00 00 35 00 00 00 00 00 00 00}}
{{boxcodelite|title=All|ps2configrev=15753|code=3D 00 00 00 89 3D 00 00 35 00 00 00 00 00 00 00}}


Line 256: Line 160:


{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x3D => 4457 (17495)
0x0A => 0x1 (patch for the SLES-51953 1.00/SLES-51963 1.01 version)
0x0A => 1 (patch for the SLES-51953 1.00/SLES-51963 1.01 version)
  0x338160
  0x338160
   0x1A400079 blez s2,0x338348 -> 0x10000079 beq zero,zero,0x338348
   0x1A400079 blez s2,0x338348 -> 0x10000079 beqz zero,0x338348
0x0A => 0x1 (patch for the 2.00 version)
0x0A => 1 (patch for the 2.00 version)
  0x338230
  0x338230
   0x1A400079 blez s2,0x338418 -> 0x10000079 beq zero,zero,0x338418
   0x1A400079 blez s2,0x338418 -> 0x10000079 beqz zero,0x338418
</syntaxhighlight>}}
</syntaxhighlight>}}


=== Flipnic ===
=== Flipnic <br><small>''Flipnic: Ultimate Pinball''</small> ===
*Flipnic: Ultimate Pinball
{{boxcodelite|title=SCPS-15050, SLES-52065, SLUS-21157|ps2configrev=17495|code=
{{boxcodelite|title=SCPS-15050, SLES-52065, SLUS-21157|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 46 00 00 00 47 00 00 00
3D 00 00 00 57 44 00 00 46 00 00 00 47 00 00 00
Line 310: Line 213:
</syntaxhighlight>}}
</syntaxhighlight>}}


=== Freekstyle ===
=== Freedom Fighters ===
{{boxcodelite|title=SLUS-20658|ps2configrev=17495|code=
{{boxcodelite|title=SLUS-20658, SLES-51467, SLPM-65548, SLPM-65803|ps2configrev=15717|code=
3D 00 00 00 57 44 00 00 0B 00 00 00 01 00 00 00
3D 00 00 00 65 3D 00 00 1F 00 00 00 E8 03 00 00
40 4B 04 00 C0 00 00 00 24 00 00 00 00 43 20 21
00 00 00 00
14 A0 00 02 00 00 00 00 24 05 00 01 10 C0 FF EC
24 84 00 04 3C 02 00 01 3C 01 00 01 24 90 FF FC
00 43 80 21 14 A0 00 02 00 00 00 00 24 05 00 01
10 C0 FF FC 00 00 00 00 3C 02 00 01 3C 01 00 01
26 04 00 04
}}
}}


Port of ps2_gxemu's Rumble Racing config. Fixes black screen after Playstation 2 logo. Patch applies to function UAudIOP_UpdateEE in AUDIO.IRX file in MODULES folder. Offset on disc sector is 0xB4, but netemu requires +0xC offset adjustment. It is because the game does read sectors in a block of 2340 bytes.
Fix freeze when you get control at start
 
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
3D => 0x3D65 (15717)
0x1F => 0x3E8 (sets something 0x3E8 - 1000 in decimal)
</syntaxhighlight>}}


== G ==
== G ==
Line 371: Line 274:
</syntaxhighlight>}}
</syntaxhighlight>}}


=== Gust Engine games ===
=== Gust Games (Video Game Developer) ===
*Ar tonelico series
*Atelier series
*Mana Khemia series
*Taishou Mononoke Ibunroku
{{boxcodelite|title=Various<br>Ported from [[PS2_Official_Configs#Mana_Khemia_2:_Fall_of_Alchemy|Mana Khemia 2: Fall of Alchemy]]|ps2configrev=16792|code=
{{boxcodelite|title=Various<br>Ported from [[PS2_Official_Configs#Mana_Khemia_2:_Fall_of_Alchemy|Mana Khemia 2: Fall of Alchemy]]|ps2configrev=16792|code=
3D 00 00 00 98 41 00 00 1B 00 00 00 15 00 00 00
3D 00 00 00 98 41 00 00 1B 00 00 00 15 00 00 00
04 00 00 00
04 00 00 00 00 00 00 00
}}
}}


Fixes the black screen. 0x15 command included in addition to the GX/SOFT configs.
Fixes blackscreen, see: [https://en.wikipedia.org/wiki/Gust_Co._Ltd.#Games Gust games]


{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4198 (16792)
0x3D => 0x4198 (16792)
0x1B => (sets some value 1)
0x1B => (sets some value 1)
0x15 => 0x4
0x15 => 4
</syntaxhighlight>}}
</syntaxhighlight>}}


Line 392: Line 291:
{{jumptosection|current=H}}
{{jumptosection|current=H}}


=== Hot Wheels: World Race ===
=== Hot Wheels: Beat That! ===
{{boxcodelite|title=SLUS-20737|ps2configrev=17495|code=
{{boxcodelite|title=SLES-54971 ?, SLUS-21628|ps2configrev=15753|code=
3D 00 00 00 57 44 00 00 0A 00 00 00 01 00 00 00
3D 00 00 00 89 3D 00 00 15 00 00 00 04 00 00 00
DC 7B 1A 00 0A BC 0A 0C 00 00 00 00 0E 00 00 00
00 00 00 00
40 E0 2A 00
}}
}}


Fixes black screen after PlayStation 2 logo. Skips some VIF1 flag being set to avoid some infinite loops in a couple functions reading VIF1 data from DMAC (0x10009000). Fix also applies to The Italian Job (SLUS-20784 and SLES-51761).
Fix for turning off ps3 after selecting track
 
{{boxcode|float=left|title=Commands Info|ps2configrev=16454|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x0A => 0x1 (1 patch to EE memory)
0x1A7BDC (skips some VIF related flag from being set)
  0xC0ABC0A jal 0x002AF028 -> 0x00000000 nop
0x0E => 0x2AE040 sub.s f00,f00,f03 (fix for graphical glitch in cloud levels)
</syntaxhighlight>}}


== I ==
== I ==
Line 413: Line 303:


=== Ice Age 2 The Meltdown ===
=== Ice Age 2 The Meltdown ===
<div style="float:right;">
{{boxcodelite|title=SLUS-21307 (standard config)|ps2configrev=15753|code=
{{boxcodelite|title=SLUS-21307 (standard config)|ps2configrev=15753|code=
3D 00 00 00 89 3D 00 00 0B 00 00 00 01 00 00 00
3D 00 00 00 89 3D 00 00 0B 00 00 00 01 00 00 00
Line 427: Line 316:
53 4C 55 53 2D 32 31 33 30 37
53 4C 55 53 2D 32 31 33 30 37
}}
}}
<br>
 
{{boxcodelite|title=SLUS-21307 (alternative config)|ps2configrev=16740|code=
{{boxcodelite|title=SLUS-21307 (alternative config)|ps2configrev=16740|code=
3D 00 00 00 64 41 00 00 0A 00 00 00 02 00 00 00
3D 00 00 00 64 41 00 00 0A 00 00 00 02 00 00 00
Line 438: Line 327:
20 01 BD 27 00 00 00 00
20 01 BD 27 00 00 00 00
}}
}}
</div>
 
*Standard config fixes the freeze at the game logo. Function allocate too small stack, causing issues later. This patch fix it.
*Standard config fixes the freeze at the game logo. Function allocate too small stack, causing issues later. This patch fix it.
*Alternative config to show 0x42 command usage, as a bonus is using less code than original to do the same.
*Alternative config to show 0x42 command usage, as a bonus is using less code than original to do the same.
Line 468: Line 357:
== J ==
== J ==
{{jumptosection|current=J}}
{{jumptosection|current=J}}
=== Justice League Heroes ===
See: [[#Snowblind Games (Game Engine)|Snowblind Games (Game Engine)]]


== K ==
== K ==
{{jumptosection|current=K}}
{{jumptosection|current=K}}
=== Kingdom Hearts II ===
{{boxcodelite|title=SLUS-21005|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 26 00 00 00 B0 7C 1D 00
FC 85 1D 00 2F 00 00 00 02 00 00 00
}}
Fixes Hostile Program Boss issue, and sound glitches.<br>
This custom config is inspired in [https://github.com/Zarh/Get_CONFIG/blob/master/files/SLUS_210.05.CONFIG the official] from gxemu with an additional command 0x2F to fix the sound glitches
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 4457 (17495)
0x26 => 0x1D7CB0, 0x1D85FC
0x2F => 0x2 fixes sound reverb glitches
</syntaxhighlight>}}


=== Kuon ===
=== Kuon ===
{{boxcodelite|title=SLUS-21007, SLES-53411, SLPS-25329|ps2configrev=17495|code=
{{boxcodelite|title=SLUS-21007|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 0E 00 00 00 24 41 10 00
3D 00 00 00 57 44 00 00 0F 00 00 00 24 41 10 00
24 41 10 00 00 00 00 00
}}
}}


Fixes bugged Sugoroku minigame. 0x0E does work with the COP2 macroinstructions too it seems.
Fixes bugged Sugoroku minigame.
 
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x0E -> 0x104124 vsubx.w vf07,vf00,vf07x
</syntaxhighlight>}}


== L ==
== L ==
Line 513: Line 386:
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x3D => 0x4457 (17495)
0x0A => 0x1
0x0A => 1
  0x2A1F80
  0x2A1F80
   0x00000001 -> 0x00000000
   0x00000001 -> 0x00000000
Line 544: Line 417:
== O ==
== O ==
{{jumptosection|current=O}}
{{jumptosection|current=O}}
=== Oni ===
{{boxcodelite|title=SLES-50134, SLES-50176, SLES-50177, SLES-50178, SLES-50179|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 0A 00 00 00 01 00 00 00
7C EF 1C 00 FF FF 00 41 00 00 00 00 00 00 00 00
}}
{{boxcodelite|title=SLUS-20064|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 0A 00 00 00 01 00 00 00
CC F3 1C 00 FF FF 00 41 00 00 00 00 00 00 00 00
}}
Fixes black screen at start
{{boxcode|float=left|title=Commands Info (EURO)|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x0A => 0x1
  0x1CEF7C 0x4100FFFF (bc0f +0), 0x00000000 (nop)
</syntaxhighlight>}}{{clear}}
{{boxcode|float=left|title=Commands Info (USA)|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x0A => 0x1
  0x1CF3CC 0x4100FFFF (bc0f +0), 0x00000000 (nop)
</syntaxhighlight>}}


== P ==
== P ==
Line 589: Line 485:


{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x3D => 4457 (17495)
0x0A => 0x2
0x0A => 2
  0x2D0398 (EngineTextureManager::GenerateMipMapChain)
  0x2D0398 (EngineTextureManager::GenerateMipMapChain)
   0x27BDFF40 addiu sp,-0xC0 -> 0x03E00008 jr ra
   0x27BDFF40 addiu sp,sp,$ff40 -> 0x03E00008 jr ra
  0x2D039C
  0x2D039C
   0x7FBE00A0 sq fp,0xA0(sp) -> 0x00000000 nop
   0x7FBE00A0 sq fp,$00a0(sp) -> 0x00000000 nop
</syntaxhighlight>}}
</syntaxhighlight>}}


Line 614: Line 510:


{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x3D => 4457 (17495)
0x07 => 0x8 (XGKICK delay by 8 cycles)
0x07 => 8 (XGKICK delay by 8 cycles)
0x01 => 0x124D94 lui at,0x001A -> 0x0A
0x01 => 0x124D94 lui at,0x001A, 0x0A
0x01 => 0x1AF618 slti at,s2,0x2800 -> 0x0B
0x01 => 0x1AF618 slti at,s2,0x2800, 0x0B
0x44 => (disable smoothing)
0x44 => (disable smoothing)
0x0A => 0x4
0x0A => 4
//Disable protection traps
//Disable protection traps
  0x125004
  0x125004
Line 630: Line 526:
  0x22F754
  0x22F754
   0x24030001 addiu v1,zero,0x1 -> 0x0000182D daddu v1,zero,zero
   0x24030001 addiu v1,zero,0x1 -> 0x0000182D daddu v1,zero,zero
0x21 => 0x0
0x21 => 0
</syntaxhighlight>}}
 
=== Rumble Racing ===
{{boxcodelite|title=SLUS-20174|ps2configrev=17136|code=
3D 00 00 00 F0 42 00 00 0B 00 00 00 01 00 00 00
DA AE 03 00 20 01 00 00 24 00 00 00 14 80 00 06
00 43 20 21 00 A0 10 21 14 A0 00 02 00 00 00 00
24 05 00 01 10 40 FF EB 24 84 00 04 24 90 FF FC
14 80 00 07 00 43 80 21 00 A0 10 21 14 A0 00 02
00 00 00 00 24 05 00 01 10 40 FF FC 00 00 00 00
26 04 00 04 00 00 00 00
}}
 
Fixes black screen after Playstation 2 logo. Patch apply to AUDIO.IRX file in MODULES folder
 
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x42F0 (17136)
0x0B => 1
  0x03AEDA, (sector)
  0x120, (offset)
    0x24 (bytes to replace),
                  Replaced opcodes
                  06 00 80 14 bnez a0, +0x1C
                  21 20 43 00 addu a0,v0,v1
                  21 10 A0 00 move v0,a1
                  02 00 A0 14 bnez a1, +0x0C
                  00 00 00 00 nop
                  01 00 05 24 li a1,0x1
                  EB FF 40 10 beqz v0, -0x50
                  04 00 84 24 addiu a0,0x4
                  FC FF 90 24 addiu s0,a0,-0x4
                  Original opcodes
                  07 00 80 14 bnez a0, +0x20
                  21 80 43 00 addu s0,v0,v1
                  21 10 A0 00 move v0,a1
                  02 00 A0 14 bnez a1, +0x0C
                  00 00 00 00 nop
                  01 00 05 24 li a1,0x1
                  FC FF 40 10 beqz v0, -0x0C
                  00 00 00 00 nop
                  04 00 04 26 addiu a0,s0,0x4
</syntaxhighlight>}}
</syntaxhighlight>}}


Line 664: Line 601:
}}
}}


Fixes the missing polygons on characters (inaccuracy in function shMulMatrix) and the incorrect camera angles (inaccuracy in function sh_ecossin). Enables the pressure sensitivity for melee attack differentiation.
Fixes the missing polygons on characters and the inaccurate camera angles. Enables the pressure sensitivity for melee attack differentiation.


{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x3D => 4457 (17495)
0x0E => 0x1735D4 (offset in the original version)
0x0E => 0x1735D4 (offset in the original version)
0x0E => 0x1753B4 (offset in the Greatest Hits version)
0x0E => 0x1753B4 (offset in the Greatest Hits version)
Line 676: Line 613:


=== Silent Hill 3 ===
=== Silent Hill 3 ===
<div style="float:right;">
<br>
{{boxcodelite|title=SLUS-20622|ps2configrev=17495|code=
{{boxcodelite|title=SLUS-20622|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 0E 00 00 00 34 AC 19 00
3D 00 00 00 57 44 00 00 0F 00 00 00 34 AC 19 00
34 AC 19 00 00 00 00 00
}}
}}
</div>


Fixes camera inaccuracies.
Fixes camera inaccuracies
 
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x0E => 0x19AC34 madda.s f13,f10
</syntaxhighlight>}}


=== Silent Hill: Origins ===
=== Silent Hill: Origins ===
Line 698: Line 628:
0x3D => 0x41F6 (16886)
0x3D => 0x41F6 (16886)
0x40 => (sets some value 1)
0x40 => (sets some value 1)
</syntaxhighlight>}}
=== Snowblind Games (Game Engine) ===
{{boxcodelite|title=Various|ps2configrev=17179|code=3D 00 00 00 1B 43 00 00 4A 00 00 00 00 00 00 00}}
Fixes backgrounds not rendering properly (see:[https://www.dropbox.com/s/92n81uot56czb5v/Datei%2018.08.17%2011%2011%2029.jpeg?dl=0]) Universal fix, but produces flickering glitches here and there. Works best when used in conjunction with the official GX config.
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x431B (17179)
0x4A => (sets something 0x15100)
</syntaxhighlight>}}
=== SRS: Street Racing Syndicate ===
{{boxcodelite|title=SLUS-20582|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 0A 00 00 00 0F 00 00 00
44 55 10 00 20 00 B0 7F E8 FF 03 08 68 56 10 00
F8 7E 04 0C F4 FF 03 08 A0 FF 0F 00 00 00 00 00
20 00 B0 7F A4 FF 0F 00 00 00 00 00 55 00 10 3C
A8 FF 0F 00 00 00 00 00 01 00 02 24 AC FF 0F 00
00 00 00 00 78 21 03 8E B0 FF 0F 00 00 00 00 00
02 00 43 14 B8 FF 0F 00 00 00 00 00 78 21 00 AE
BC FF 0F 00 00 00 00 00 53 15 04 08 C0 FF 0F 00
00 00 00 00 20 00 B0 7B D0 FF 0F 00 00 00 00 00
55 00 04 3C D4 FF 0F 00 00 00 00 00 01 00 02 24
D8 FF 0F 00 00 00 00 00 F8 7E 04 0C DC FF 0F 00
00 00 00 00 78 21 82 AC E0 FF 0F 00 00 00 00 00
9C 15 04 08 15 00 00 00 04 00 00 00 0B 00 00 00
01 00 00 00 5D 01 00 00 68 06 00 00 14 00 00 00
00 00 00 00 0C 04 7E A8 00 00 00 00 00 00 00 00
10 40 FF FC 0C 04 7E A8 00 00 00 00 00 00 00 00
00 00 00 00 10 40 FF FB 01 00 00 00 40 55 10 00
1B 00 00 00 01 00 00 00 68 56 10 00 1C 00 00 00
00 00 00 00
}}
Multi-version config. Fixes the hang on the splash screen. Based on the original GX config which does work only for the 1.03 version, because of the offset difference. A value of zero in 0x552168 (1.03 version) or 0x552178 (2.00 version) is expected to avoid the hang. This value is stored there using either the 0x01 command (1.03) or custom hook (2.00). Original value is reverted back later. 0x0B patch is delaying the jump. It seems the emulator is not able to execute the 0x01 hook on the jump or branch instructions due to how the recompiler works. What is interesting, the 0x0B command there does not use 0xC offset correction.
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 4457 (17495)
0x0A => F
0x105544
  0x7FB00020 sq s0,0x20(sp) -> 0x0803FFE8 j 0xFFFA0
0x105668 (patch does apply to the 2.00 version)
  0x0C047EF8 jal 0x11FBE0 -> 0x0803FFF4 j 0xFFFD0
0xFFFA0 (start of the first hook)
  0x7FB00020 sq s0,0x20(sp)
0xFFFA4
  0x3C100055 lui s0,0x55
0xFFFA8
  0x24020001 addiu v0,zero,0x1
0xFFFAC
  0x8E032178 lw v1,0x2178(s0)
0xFFFB0 (version check)
  0x14430002 bne v0,v1,0xFFFBC
0xFFFB8
  0xAE002178 sw zero,0x2178(s0)
0xFFFBC
  0x08041553 j 0x10554C
0xFFFC0
  0x7BB00020 lq s0,0x20(sp)
0xFFFD0 (start of the second hook, executed only in the 2.00 version)
  0x3C040055 lui a0,0x55
0xFFFD4
  0x24020001 addiu v0,zero,0x1
0xFFFD8
  0x0C047EF8 jal 0x11FBE0
0xFFFDC
  0xAC822178 sw v0,0x2178(a0)
0xFFFE0
  0x0804159C j 0x105670
0x15 => 4
0x0B => 1
0x15D (sector)
0x668 (offset -> 0xAEE68 in the image)
0x14 (bytes to replace)
  Replaced bytes:
  00 00 00 00 nop
  A8 7E 04 0C jal 0x11FAA0
  00 00 00 00 nop
  00 00 00 00 nop
  FC FF 40 10 beqz v0,0x10566C
  Original bytes:
  A8 7E 04 0C jal 0x11FAA0
  00 00 00 00 nop
  00 00 00 00 nop
  00 00 00 00 nop
  FB FF 40 10 beqz v0,0x105668
0x01 => 0x105540 addiu sp,-0x30, 0x1B
0x01 => 0x105668 nop (after applying the 0x0B patch), 0x1C
</syntaxhighlight>}}
</syntaxhighlight>}}


Line 710: Line 730:


{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x3D => 4457 (17495)
0x07 => 0x8 (XGKICK delay by 8 cycles)
0x07 => 8 (XGKICK delay by 8 cycles)
0x01 => 0x100948 daddu a0,s5,zero -> 0x0A
0x01 => 0x100948 daddu a0,s5,zero, 0x0A
0x2E => 0x172
0x2E => 172
0x44 => (disable smoothing)
0x44 => (disable smoothing)
0x50 => (enable pressure sensitive controls)
0x50 => (enable pressure sensitive controls)
Line 729: Line 749:
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 3D89 (15753)
0x3D => 3D89 (15753)
0x01 => 0x49B784 lui v0,0x1000 -> 0x05 (hook for the v1.01, applies to SWBFRNT2.ELF)
0x01 => 0x49B784 lui v0,0x1000, 0x05 (hook for the v1.01, applies to SWBFRNT2.ELF)
0x01 => 0x499704 lui v0,0x1000 -> 0x05 (hook for the v2.01, applies to SWBFRNT2.ELF)
0x01 => 0x499704 lui v0,0x1000, 0x05 (hook for the v2.01, applies to SWBFRNT2.ELF)
</syntaxhighlight>}}
</syntaxhighlight>}}


Line 757: Line 777:


Fix graphical gliches, subtitles, QTE buttons, missing HUD
Fix graphical gliches, subtitles, QTE buttons, missing HUD
=== SRS: Street Racing Syndicate ===
Fix for the opening splash screen freeze. Compatible with both versions of the game <abbr title="The official GX config is only compatible with v1.03">v1.03 and v2.00</abbr>
{{boxcodelite|title=SLUS-20582|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 0A 00 00 00 10 00 00 00
44 55 10 00 20 00 B0 7F E8 FF 03 08 68 56 10 00
F8 7E 04 0C F4 FF 03 08 A0 FF 0F 00 00 00 00 00
20 00 B0 7F A4 FF 0F 00 00 00 00 00 55 00 10 3C
A8 FF 0F 00 00 00 00 00 01 00 02 24 AC FF 0F 00
00 00 00 00 78 21 03 8E B0 FF 0F 00 00 00 00 00
02 00 43 14 B8 FF 0F 00 00 00 00 00 78 21 00 AE
BC FF 0F 00 00 00 00 00 53 15 04 08 C0 FF 0F 00
00 00 00 00 20 00 B0 7B D0 FF 0F 00 00 00 00 00
55 00 04 3C D4 FF 0F 00 00 00 00 00 01 00 02 24
D8 FF 0F 00 00 00 00 00 78 21 82 AC DC FF 0F 00
00 00 00 00 F8 7E 04 0C E0 FF 0F 00 00 00 00 00
68 21 80 AC E8 FF 0F 00 00 00 00 00 9C 15 04 08
15 00 00 00 04 00 00 00 0B 00 00 00 01 00 00 00
5D 01 00 00 68 06 00 00 14 00 00 00 00 00 00 00
0C 04 7E A8 00 00 00 00 00 00 00 00 10 40 FF FC
0C 04 7E A8 00 00 00 00 00 00 00 00 00 00 00 00
10 40 FF FB 01 00 00 00 40 55 10 00 1B 00 00 00
01 00 00 00 68 56 10 00 1C 00 00 00 00 00 00 00
}}
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
.
..
...
</syntaxhighlight>}}


== T ==
== T ==
{{jumptosection|current=T}}
{{jumptosection|current=T}}


=== Tales of the Abyss ===
=== Tales of The Abyss ===
<div style="float:right;">
<br>
{{boxcodelite|title=SLUS-21386|ps2configrev=15717|code=
{{boxcodelite|title=SLUS-21386|ps2configrev=15717|code=
3D 00 00 00 65 3D 00 00 0E 00 00 00 F4 21 29 00
3D 00 00 00 65 3D 00 00 26 00 00 00 FC FF 27 00
}}
FF FF 27 00 26 00 00 00 F4 21 29 00 F8 21 29 00
</div>
00 00 00 00
 
Fixes the freeze at the Choral Castle.
 
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x3D65 (15717)
0x0E => 0x2921F4 add.s f00,f11,f00
</syntaxhighlight>}}
 
=== Tenchu: Wrath of Heaven ===
{{boxcodelite|title=SLUS-20397, SLES-50679|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 0A 00 00 00 04 00 00 00
0C 66 17 00 00 00 A2 A0 00 00 00 00 28 66 17 00
00 00 A2 A0 00 00 00 00 C8 C9 2D 00 A6 00 60 10
A6 00 00 10 88 F6 1A 00 2C 00 40 10 2C 00 00 10
07 00 00 00 08 00 00 00
}}
}}


Stops the storing of some bytes to GIF channel on DMAC (0x1000A000) in function dma2Exec to prevent freezing when values are bad. Additionally skips shadow and mist rendering to fix slowdown.
Fix freeze at Choral Castle


{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
Improve add accuracy range => 0x27FFFC , 0x27FFFF
0x0A => 0x4
Improve add accuracy range => 0x2921F4 , 0x2921F8
0x17660C (first byte)
  0xA0A20000 sb v0,(a1) -> 0x00000000 nop
0x176628 (second byte)
  0xA0A20000 sb v0,(a1) -> 0x00000000 nop
0x2DC9C8 (skips shadow rendering)
  0x106000A6 beq v1,zero,0x2DCC64 -> 0x100000A6 b 0x2DCC64
0x1AF688 (skips mist rendering)
  0x1040002C beq v0,zero,0x1AF73C -> 0x1000002C b 0x1AF73C
0x07 => 0x8 (XGKICK delay by 8 cycles, taken from GX config)
</syntaxhighlight>}}
</syntaxhighlight>}}


=== The Bard's Tale ===
See: [[#Snowblind Games (Game Engine)|Snowblind Games (Game Engine)]]


=== Tokyo Extreme Racer 3 ===
=== Tokyo Extreme Racer 3 ===
Line 844: Line 809:
  Vsync Delay -> No IPU 150,000
  Vsync Delay -> No IPU 150,000
</syntaxhighlight>}}
</syntaxhighlight>}}
=== Tony Hawk's Games ===
{{boxcodelite|title=Various|ps2configrev=15753|code=
3D 00 00 00 89 3D 00 00 08 00 00 00 00 00 00 80
FF FF FF FF 00 00 00 80 00 00 40 53 00 00 00 80
FF FF FF FF 00 00 00 80 00 00 40 D3 14 00 00 00
00 00 00 00
}}
VU patch fixes graphic issues with Spiky Polygons. Command 0x14 seems to be related to VRC, but is not known what it do.


=== True Crime: NYC ===
=== True Crime: NYC ===
Line 898: Line 873:


{{boxcode|float=left|title=Commands Info|ps2configrev=16454|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|ps2configrev=16454|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x3D => 4457 (17495)
0x0A => 0x1F
0x0A => 1F
//Enable frame skipping in towns
//Enable frame skipping in towns
  0x3D6E78
  0x3D6E78
Line 970: Line 945:
   0x64030002 daddiu v1,zero,0x2 -> 0x64030000 daddiu v1,zero,0x0
   0x64030002 daddiu v1,zero,0x2 -> 0x64030000 daddiu v1,zero,0x0
0x07 => 8 (XGKICK delay by 8 cycles)
0x07 => 8 (XGKICK delay by 8 cycles)
0x01 => 0x2B9808 slti at,s2,0x2800 -> 0x0B
0x01 => 0x2B9808 slti at,s2,0x2800, 0x0B
0x01 => 0x100928 sqc2 vf3,(v0) -> 0x0A
0x01 => 0x100928 sqc2 vf3,(v0), 0x0A
0x44 => (disable smoothing)
0x44 => (disable smoothing)
</syntaxhighlight>}}
</syntaxhighlight>}}
Line 991: Line 966:
=== Xenosaga Episode I: Der Wille zur Macht ===
=== Xenosaga Episode I: Der Wille zur Macht ===
{{boxcodelite|title=SLUS-20469|ps2configrev=17495|code=
{{boxcodelite|title=SLUS-20469|ps2configrev=17495|code=
3D 00 00 00 57 44 00 00 0A 00 00 00 02 00 00 00
3D 00 00 00 57 44 00 00 0A 00 00 00 02 00 00 00 20
20 F5 24 00 E0 FF BD 27 08 00 E0 03 24 F5 24 00
F5 24 00 E0 FF BD 27 08 00 E0 03 24 F5 24 00 2D 30
2D 30 80 00 00 00 00 00 0E 00 00 00 94 24 32 00
80 00 00 00 00 00 0E 00 00 00 94 24 32 00 0E 00 00
0E 00 00 00 90 2B 32 00 41 00 00 00 00 00 00 00
00 90 2B 32 00 41 00 00 00 00 00 00 00
}}
}}


Line 1,000: Line 975:


{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
{{boxcode|float=left|title=Commands Info|code=<syntaxhighlight lang=bash>
0x3D => 0x4457 (17495)
0x3D => 4457 (17495)
0x0A => 0x2 (2 patches to EE memory)
0x0A => 3
  0x24F520 (DefocusMainType09 - responsible for black and white cutscene filter)
  0x24F520 (DefocusMainType09 - responsible for black and white cutscene filter)
   0x27BDFFE0 addiu sp,sp,-0x20 -> 0x03E00008 jr ra
   0x27BDFFE0 addiu sp,sp,-0x20 -> 0x03E00008 jr ra
Line 1,008: Line 983:
0x0E => 0x322494 sub.s f01,f01,f10 (in function UnduCheckSub for AGWS Parts Shop bug)
0x0E => 0x322494 sub.s f01,f01,f10 (in function UnduCheckSub for AGWS Parts Shop bug)
0x0E => 0x322B90 sub.s f00,f00,f02 (in function UnduCheckSubCrossCheck for AGWS Parts Shop bug)  
0x0E => 0x322B90 sub.s f00,f00,f02 (in function UnduCheckSubCrossCheck for AGWS Parts Shop bug)  
0x41 => ignores D_ENABLEW writes from EE (fix for freeze in Beach of Nothingness cutscene)
0x41 => disables lwsync (fix for freeze in Beach of Nothingness cutscene)
</syntaxhighlight>}}
</syntaxhighlight>}}


Please note that all contributions to PS3 Developer wiki are considered to be released under the GNU Free Documentation License 1.2 (see PS3 Developer wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)