Help:Game Patches: Difference between revisions

Help page
(Add SPU MLAA patches)
m (→‎Demon's Souls: minor change)
(39 intermediate revisions by 5 users not shown)
Line 27: Line 27:
===SPU MLAA removal patch===
===SPU MLAA removal patch===
: '''Author:''' [https://github.com/Whatcookie Whatcookie]
: '''Author:''' [https://github.com/Whatcookie Whatcookie]
: '''Game versions:''' NA
: '''Patch version:''' 1.5
: '''Patch version:''' NA
: '''Notes:''' Removes Morphological Anti-Aliasing, known as ''MLAA'', a form of post process anti-aliasing which is done using the CELL's SPUs instead of the RSX for extra performance. These patches are generally game and version agnostic, and currently work with 37 titles.
: '''Notes:''' Removes a form of post process anti aliasing which is done by CELL for extra perforamnce. These patches are generally game and version agnostic, and work on many games. Currently known to work with 36 titles.
<syntaxhighlight lang="yaml">
<syntaxhighlight lang="yaml">
SPU-9001b44fd7278b5a6fa5385939fe928a0e549394: # Soul Calibur V, Yakuza Ishin, Journey, Yakuza 5, Tokyo Jungle, Oddworld: Stranger's Wrath HD, Soul Calibur Lost Swords, Binary Domain, Puppeteer
SPU-9001b44fd7278b5a6fa5385939fe928a0e549394: # Soul Calibur V, Yakuza Ishin, Journey, Yakuza 5, Tokyo Jungle, Oddworld: Stranger's Wrath HD, Soul Calibur Lost Swords, Binary Domain, Puppeteer
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x0000349c, 0x40800017 ] # il r23 0 # Comment this line out to fix the blackscreen in Puppeteer
  - [ be32, 0x0000349c, 0x40800017 ] # il r23 0 # Comment this line out to fix the blackscreen in Puppeteer


SPU-969cf3e9db75f52a6b41074ccbff74106b709854: # Sly 4, Motorstorm Apocalypse, Motorstorm RC, DmC DMC, Red Faction Armageddon
SPU-969cf3e9db75f52a6b41074ccbff74106b709854: # Sly 4, Motorstorm Apocalypse, Motorstorm RC, DmC DMC, Red Faction Armageddon, Ace Combat Assault Horizon
#SPUNAME: 'objs/release/edgepost-mlaa-task.' // NOTE: has asserts!
#SPUNAME: 'objs/release/edgepost-mlaa-task.' // NOTE: has asserts!
  - [ be32, 0x0000325c, 0x40800003 ] # il r3 0  
  - [ be32, 0x0000325c, 0x40800003 ] # il r3 0
  - [ be32, 0x00004C00, 0x40800091 ] # il r17 1  
  - [ be32, 0x00004C00, 0x40800091 ] # il r17 1


SPU-931132fd48a40bce0bec28e21f760b1fc6ca4364: # captain america, Yakuza dead souls, Need for Speed Shift 2
SPU-931132fd48a40bce0bec28e21f760b1fc6ca4364: # captain america, Yakuza dead souls, Need for Speed Shift 2
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x0000349c, 0x40800017 ] # il r23 0
  - [ be32, 0x0000349c, 0x40800017 ] # il r23 0


SPU-7b5ea49122ec7f023d4a72452dc7a9208d9d6dbf: # Dragon age 2
SPU-7b5ea49122ec7f023d4a72452dc7a9208d9d6dbf: # Dragon age 2
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x0000349c, 0x40800017 ] # il r23 0
  - [ be32, 0x0000349c, 0x40800017 ] # il r23 0


SPU-e3780fe1dc8953f849ac844ec9688ff4da3ca3ae: # Metro Last Light
SPU-e3780fe1dc8953f849ac844ec9688ff4da3ca3ae: # Metro Last Light
#SPUNAME: 'u:\bin_ps3_SNC\edgepost_mlaa_ta'
#SPUNAME: 'u:\bin_ps3_SNC\edgepost_mlaa_ta'
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0  
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x000034a4, 0x40800017 ] # il r23 0
  - [ be32, 0x000034a4, 0x40800017 ] # il r23 0


SPU-794795c449beef176d076816284849d266f55f99: # Macross 30
SPU-794795c449beef176d076816284849d266f55f99: # Macross 30
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0  
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x000034a4, 0x40800017 ] # il r23 0  
  - [ be32, 0x000034a4, 0x40800017 ] # il r23 0


SPU-df5b1c3353cc36bb2f0fb59197d849bb99c3fecd: # Shadow of the collosus, Medieval Moves: Deadmund's Quest, Sports Champions 2
SPU-df5b1c3353cc36bb2f0fb59197d849bb99c3fecd: # Shadow of the collosus, Medieval Moves: Deadmund's Quest, Sports Champions 2
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x0000349c, 0x40800017 ] # il r23 0
  - [ be32, 0x0000349c, 0x40800017 ] # il r23 0


SPU-5177cbc4bf45c8a0a6968c2a722da3a9e6cfb28b: # Prince of Persia: The Sands of Time, Prince of Persia: The Two Thrones, Prince of Persia: Warrior Within
SPU-5177cbc4bf45c8a0a6968c2a722da3a9e6cfb28b: # Prince of Persia: The Sands of Time, Prince of Persia: The Two Thrones, Prince of Persia: Warrior Within
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
#   - [ be32, 0x0000349c, 0x40800017 ] # il r23 0 # blackscreen
# - [ be32, 0x0000349c, 0x40800017 ] # il r23 0 # blackscreen


SPU-ac189d7f87091160a94e69803ac0cff0a8bb7813: # ico mlaa
SPU-ac189d7f87091160a94e69803ac0cff0a8bb7813: # ico mlaa
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  - [ be32, 0x0000349c, 0x40800017 ] # il r23 0
  - [ be32, 0x0000349c, 0x40800017 ] # il r23 0


SPU-530c255936b07b25467a58e24ceff5fd4e2960b7: # gow 3 mlaa // Almost certainly specific to GOW3
SPU-530c255936b07b25467a58e24ceff5fd4e2960b7: # gow 3 mlaa // Almost certainly specific to GOW3
#SPUNAME: 'mlaascanline.PS3_Release/mlaasca'
#SPUNAME: 'mlaascanline.PS3_Release/mlaasca'
  - [ be32, 0x00005948, 0x40800094 ] # il r20 1
  - [ be32, 0x00005948, 0x40800094 ] # il r20 1
  - [ be32, 0x0000690c, 0x40800027 ] # il r39 0
  - [ be32, 0x0000690c, 0x40800027 ] # il r39 0


SPU-2239af4827b17317522bd6323c646b45b34ebf14: # gow 3 patch 1.03
SPU-2239af4827b17317522bd6323c646b45b34ebf14: # gow 3 patch 1.03
#SPUNAME: 'mlaascanline.PS3_Release/mlaasca'
#SPUNAME: 'mlaascanline.PS3_Release/mlaasca'
  - [ be32, 0x00005948, 0x40800094 ] # il r20 1
  - [ be32, 0x00005948, 0x40800094 ] # il r20 1
  - [ be32, 0x0000690c, 0x40800027 ] # il r39 0
  - [ be32, 0x0000690c, 0x40800027 ] # il r39 0
 
SPU-976d2128f08c362731413b75c934101b76c3d73b: # Early versions of LBP2
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
  - [ be32, 0x000036d4, 0x4080001d ] # il r29 0
  - [ be32, 0x000033d0, 0x40800005 ] # il r5 0
 
SPU-a129a01a270246c85df18eee0e959ef4263b6510: # Other early versions of LBP2
#SPUNAME: 'C:\dev\CW_br2_move_final-output\'
  - [ be32, 0x00003744, 0x4080001e ] # il r30 0
  - [ be32, 0x00003430, 0x40800006 ] # il r6 0


SPU-702d0205a89d445d15dc0f96548546c4e2e7a59f: # Little big planet 2 and 3
SPU-702d0205a89d445d15dc0f96548546c4e2e7a59f: # Little big planet 2 and 3
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
  - [ be32, 0x000036bc, 0x4080001c ] # il r28 0  
  - [ be32, 0x000036bc, 0x4080001c ] # il r28 0
  - [ be32, 0x000033c0, 0x40800005 ] # il r5 0  
  - [ be32, 0x000033c0, 0x40800005 ] # il r5 0


SPU-45f98378f0837fc6821f63576f65d47d10f9bbcb: # yakuza 0, yakuza kiwami
SPU-45f98378f0837fc6821f63576f65d47d10f9bbcb: # yakuza 0, yakuza kiwami
#SPUNAME: 'PS3_Release\edgepost-mlaa-task.s'
#SPUNAME: 'PS3_Release\edgepost-mlaa-task.s'
  - [ be32, 0x000033b0, 0x40800017 ] # il r23 0
  - [ be32, 0x000033b0, 0x40800017 ] # il r23 0
  - [ be32, 0x0000373c, 0x4080001f ] # il r31 0
  - [ be32, 0x0000373c, 0x4080001f ] # il r31 0


SPU-82b3399c8e6533ba991eedb0e139bf20c7783bac: # Twisted Metal
SPU-82b3399c8e6533ba991eedb0e139bf20c7783bac: # Twisted Metal
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
  - [ be32, 0x000033b0, 0x40800017 ] # il r23 0
  - [ be32, 0x000033b0, 0x40800017 ] # il r23 0
  - [ be32, 0x0000373c, 0x4080001f ] # il r31 0
  - [ be32, 0x0000373c, 0x4080001f ] # il r31 0


SPU-191fe1c92c8360992b3240348e70ea37d50812d4: # Alice madness returns
SPU-191fe1c92c8360992b3240348e70ea37d50812d4: # Alice madness returns
#SPUNAME: 'E:\Alice2\Development\Intermedia'
#SPUNAME: 'E:\Alice2\Development\Intermedia'
  - [ be32, 0x00003344, 0x40800003 ] # il r3 0
  - [ be32, 0x00003344, 0x40800003 ] # il r3 0
  - [ be32, 0x000037b4, 0x4020007f ] # spu nop
  - [ be32, 0x000037b4, 0x4020007f ] # spu nop


SPU-7cd211ff1cbd33163eb0711440dccbb3c1dbcf6c: # God of War Ascension
SPU-7cd211ff1cbd33163eb0711440dccbb3c1dbcf6c: # God of War Ascension
#SPUNAME: 'z:/export/jenkins/workspace/int6'
#SPUNAME: 'z:/export/jenkins/workspace/int6'
  - [ be32, 0x00004440, 0x40800002 ] # il r2 0
  - [ be32, 0x00004440, 0x40800002 ] # il r2 0
  - [ be32, 0x000056C4, 0x4080008a ] # il r10 0
  - [ be32, 0x000056C4, 0x4080008a ] # il r10 0
 
SPU-1549476fe258150ff9f902229ffaed69a932a9c1: # God of War Ascension
#SPUNAME: 'Z:/output/EURint6/SPUMLAATask/PS'
  - [ be32, 0x00004440, 0x40800002 ] # il r2 0
  - [ be32, 0x000056C4, 0x4080008a ] # il r10 0


SPU-58fb5172bd99336a4ac96eefb00e739ce41f788b: # test drive unlimited 2
SPU-58fb5172bd99336a4ac96eefb00e739ce41f788b: # test drive unlimited 2
Line 116: Line 130:


SPU-273bd5a0640e71876c11878ba9496d928d608f9e: # Socom 4
SPU-273bd5a0640e71876c11878ba9496d928d608f9e: # Socom 4
SPUNAME: '.imogen/ps3_gold/edgemlaa.elf'
#SPUNAME: '.imogen/ps3_gold/edgemlaa.elf'
#TODO: check this game later
#TODO: check this game later, doesn't yet go ingame


SPU-239ea3f6ee242d11d857c844820aeda5157691c3: # Also Socom 4
SPU-239ea3f6ee242d11d857c844820aeda5157691c3: # Also Socom 4
#SPUNAME: '.imogen/ps3_gold_3d/edgemlaa3d.e'
#SPUNAME: '.imogen/ps3_gold_3d/edgemlaa3d.e'
#TODO: check this (yes, two different elfs for the same game)
#TODO: check this (yes, two different elfs for the same game)
SPU-1dbc4a6d4925b004b25b41d9ae2cf7a6e60e793a: # Starhawk single player demo
#SPUNAME: 'C:\spin\Branch\SPDemo\RT\PS3_Can' // Different for full game?
#TODO: check this, doesn't yet go ingame
SPU-8acb4f81726084c67d74ceceb5461681fcabf45b: # Retro/Grade
#SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
#TODO: check this
SPU-cc438f40a4d7d2ce312a064b8a99ae1b6217bd71: # Ace Combat Infinity
#SPUNAME: 'PS3_Release\edgepost-mlaa-task.s'
#TODO: This game is online only, and if this variant doesn't appear in other titles it will remain unpatched
</syntaxhighlight>
</syntaxhighlight>


__TOC__
==Army of TWO: The 40th Day==
==Army of TWO: The 40th Day==


Line 156: Line 181:
   - [ be32, 0x008bbd64, 0x60000000 ]
   - [ be32, 0x008bbd64, 0x60000000 ]
   - [ be32, 0x008bbd68, 0x60000000 ]
   - [ be32, 0x008bbd68, 0x60000000 ]
</syntaxhighlight>
==Dark Souls==
===Unlock FPS Patch===
: '''Author:''' [https://github.com/Whatcookie Whatcookie]
: '''Game versions:''' BLUS30782
: '''Patch version:''' 1.0
: '''Notes:''' For people who would like to play the unpatched version of dark souls at decent framerates (unpatched PC version is equivalent to 1.06 on consoles!)
<syntaxhighlight lang="yaml">
PPU-3577a3e8efa233c68dedce81a3d0a63dab05dbed: # Dark souls 1.0 BLUS30782
# 60fps noskip
  - [be32, 0x00146e40, 0x38800002 ] # li r4 0x2
  - [be32, 0x00146e44, 0x989f070c ]
  - [be32, 0x00146e48, 0x989f070d ]
# delta time
  - [ be32, 0x001423e8, 0x494447e9 ] # jump to code cave
# get mftb
  - [ be32, 0x01586bd0, 0x7eac42e6 ] # mftb r21              // Move from timebase register (clock)
# get mftb delta
  - [ be32, 0x01586bd4, 0x3ec0017d ] # lis r22,0x017d        // load high bits of address (0x017de3f8)
  - [ be32, 0x01586bd8, 0x62d6e3f8 ] # ori r22,r22,0xe3f8    // load low bits of address
  - [ be32, 0x01586bdc, 0x7e96a02a ] # ldx r20,r22,r20      // load previous frames mftb reading
  - [ be32, 0x01586be0, 0xfab60000 ] # std r21,0x0(r22)      // store this frames mftb reading
  - [ be32, 0x01586be4, 0x7e74a850 ] # subf r19,r21,r20      // subtract previous mftb reading from this mftb frames reading
# mftb delta to float
  - [ be32, 0x01586be8, 0xfa7600e0 ] # std r19,0xe0(r22)    // store mftb delta (to be loaded into FPR)
  - [ be32, 0x01586bec, 0xcbd600e0 ] # lfd f30,0xe0(r22)    // load mftb delta into FPR
  - [ be32, 0x01586bf0, 0xffc0f69c ] # fcfid f30,f30        // convert integer to double
  - [ be32, 0x01586bf4, 0xffc0f018 ] # frsp f30,f30          // round to single precision
# mftb delta to seconds
  - [ be32, 0x01586bf8, 0x3e400158 ] # r18,0x158            // load high bits constants pointer
  - [ be32, 0x01586bfc, 0x62526bd0 ] # ori r18,r18,0x6bd0    // load low bits of constants pointer
  - [ be32, 0x01586c00, 0xc3b20054 ] # lfs f29,0x54(r18)    // load timebase frequency constant
  - [ be32, 0x01586c04, 0xc3920058 ] # lfs f28,0x58(r18)    // load maximum timestep size
  - [ be32, 0x01586c08, 0xfffee824 ] # fdiv f31,f30,f29      // divide timebase delta by timebase frequency
# check timestep size
  - [ be32, 0x01586c0c, 0xff9fe000 ] # fcmpu cr7,f31,f28    // compare current delta time to maximum timestep
  - [ be32, 0x01586c10, 0x419c0008 ] # blt +0x08            // don't return the maximum timestep size
# set maximum timestep
  - [ be32, 0x01586c14, 0xffe0e090 ] # fmr f31,f28          // move maximum timestep to be returned
# cleanup
  - [ be32, 0x01586c18, 0x7e94a278 ] # xor r20,r20,r20      // zero r20
  - [ be32, 0x01586c1c, 0x7e94a278 ] # xor r19,r19,r19      // zero r19
  - [ be32, 0x01586c20, 0x4e800020 ] # blr                  // return
# constants
  - [ be32, 0x01586c24, 0x4c989680 ]  # timebase frequency as hexfloat (80mhz)
  - [ bef32, 0x01586c28, 0.05000000 ] # maximum timestep size (50ms or 20fps)
</syntaxhighlight>
</syntaxhighlight>


==Demon's Souls==
==Demon's Souls==


===60/120 FPS Patch===
===Unlock FPS Patch===
: '''Author:''' [https://github.com/Whatcookie Whatcookie]
: '''Author:''' [https://github.com/Whatcookie Whatcookie], [https://github.com/gibbed Gibbed]
: '''Game versions:''' BLUS30443, BLES00932
: '''Game versions:''' BLUS30443, BLES00932
: '''Patch version:''' 1.0.1
: '''Patch version:''' 2.1
: '''Notes:''' This patch MUST be used with the following settings: Clocks Scale: 200, Vblank frequency: 120.
: '''Notes:''' Patch version 2.0 and above is not compatible with the settings used for the previous patch. Clocks scale and Vblank rate must be set to the defaults. Vblank rate can be modified to increase the framelimit beyond 60FPS, however it's not recommended as users may encounter physics issues.
<syntaxhighlight lang="yaml">
<syntaxhighlight lang="yaml">
# 1.0.1
PPU-83681f6110d33442329073b72b8dc88a2f677172: # BLUS30443
PPU-83681f6110d33442329073b72b8dc88a2f677172: # BLUS30443
# Alter fixed timestep
# Set 60FPS with no frameskip
   - [ bef32, 0x018c8db4, 0.01666667 ] # for 60FPS
# by Gibbed
#  - [ bef32, 0x018c8db4, 0.00833334 ] # for 120FPS
  - [ be16, 0x25ed8, 0x981f ]
 
# delta time
# by Whatcookie
  - [ be32, 0x0001b964, 0x496ac2cd ] # jump to code cave
 
# get mftb
  - [ be32, 0x016c7c30, 0x7eac42e6 ] # mftb r21              // Move from timebase register (clock)
 
# get mftb delta
  - [ be32, 0x016c7c34, 0x3ec00185 ] # lis r22,0x0185        // load high bits of address
  - [ be32, 0x016c7c38, 0x3ad62608 ] # addi r22,r22,0x2608  // load low bits of address
  - [ be32, 0x016c7c3c, 0x7e96a02a ] # ldx r20,r22,r20      // load previous frames mftb reading
  - [ be32, 0x016c7c40, 0xfab60000 ] # std r21,0x0(r22)      // store this frames mftb reading
  - [ be32, 0x016c7c44, 0x7e74a850 ] # subf r19,r21,r20      // subtract previous mftb reading from this mftb frames reading
 
# mftb delta to float
  - [ be32, 0x016c7c48, 0xfa760018 ] # std r19,0x18(r22)    // store mftb delta (to be loaded into FPR)
  - [ be32, 0x016c7c4c, 0xcbd60018 ] # lfd f30,0x18(r22)    // load mftb delta into FPR
  - [ be32, 0x016c7c50, 0xffc0f69c ] # fcfid f30,f30        // convert integer to double
  - [ be32, 0x016c7c54, 0xffc0f018 ] # frsp f30,f30          // round to single precision
 
# mftb delta to seconds
  - [ be32, 0x016c7c58, 0x3e40016c ] # r18,0x16c            // load high bits constants pointer
  - [ be32, 0x016c7c5c, 0x3a527c30 ] # addi r18,r18,0x7c30  // load low bits of constants pointer
  - [ be32, 0x016c7c60, 0xc3b20054 ] # lfs f29,0x54(r18)    // load timebase frequency constant
  - [ be32, 0x016c7c64, 0xc3920058 ] # lfs f28,0x58(r18)    // load maximum timestep size
  - [ be32, 0x016c7c68, 0xeffee824 ] # fdivs f31,f30,f29    // divide timebase delta by timebase frequency
 
# check timestep size
  - [ be32, 0x016c7c6c, 0xff9fe000 ] # fcmpu cr7,f31,f28    // compare current delta time to maximum timestep
  - [ be32, 0x016c7c70, 0x419c0008 ] # blt +0x08            // don't return the maximum timestep size
 
# set maximum timestep
  - [ be32, 0x016c7c74, 0xffe0e090 ] # fmr f31,f28          // move maximum timestep to be returned
 
# cleanup
   - [ be32, 0x016c7c78, 0x7e94a278 ] # xor r20,r20,r20      // zero r20
  - [ be32, 0x016c7c7c, 0x7e94a278 ] # xor r19,r19,r19      // zero r19
  - [ be32, 0x016c7c80, 0x4e800020 ] # blr                  // return
 
# constants
  - [ be32, 0x016c7c84, 0x4c989680 ] # timebase frequency as hexfloat (80mhz)
  - [ bef32, 0x016c7c88, 0.05000000 ] # maximum timestep size (50ms or 20FPS)


PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # BLES00932
PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # BLES00932
# Alter fixed timestep
# Set 60FPS with no frameskip
   - [ bef32, 0x018c8f20, 0.01666667 ] # for 60FPS
# by Gibbed
#  - [ bef32, 0x018c8f20, 0.00833334 ] # for 120FPS
  - [ be16, 0x26ac0, 0x981f ]
 
# delta time
# by Whatcookie
  - [ be32, 0x0001c534, 0x496ada1d ] # jump to code cave
 
# get mftb
  - [ be32, 0x016c9f50, 0x7eac42e6 ] # mftb r21              // Move from timebase register (clock)
 
# get mftb delta
  - [ be32, 0x016c9f54, 0x3ec00185 ] # lis r22,0x0185        // load high bits of address
  - [ be32, 0x016c9f58, 0x3ad62608 ] # addi r22,r22,0x2608  // load low bits of address
  - [ be32, 0x016c9f5c, 0x7e96a02a ] # ldx r20,r22,r20      // load previous frames mftb reading
  - [ be32, 0x016c9f60, 0xfab60000 ] # std r21,0x0(r22)      // store this frames mftb reading
  - [ be32, 0x016c9f64, 0x7e74a850 ] # subf r19,r21,r20      // subtract previous mftb reading from this mftb frames reading
 
# mftb delta to float
  - [ be32, 0x016c9f68, 0xfa760018 ] # std r19,0x18(r22)    // store mftb delta (to be loaded into FPR)
  - [ be32, 0x016c9f6c, 0xcbd60018 ] # lfd f30,0x18(r22)    // load mftb delta into FPR
  - [ be32, 0x016c9f70, 0xffc0f69c ] # fcfid f30,f30        // convert integer to double
  - [ be32, 0x016c9f74, 0xffc0f018 ] # frsp f30,f30          // round to single precision
 
# mftb delta to seconds
  - [ be32, 0x016c9f78, 0x3e40016c ] # r18,0x16c            // load high bits constants pointer
  - [ be32, 0x016c9f7c, 0x62529f50 ] # ori r18,r18,0x9f50    // load low bits of constants pointer
  - [ be32, 0x016c9f80, 0xc3b20054 ] # lfs f29,0x54(r18)    // load timebase frequency constant
  - [ be32, 0x016c9f84, 0xc3920058 ] # lfs f28,0x58(r18)    // load maximum timestep size
  - [ be32, 0x016c9f88, 0xeffee824 ] # fdivs f31,f30,f29    // divide timebase delta by timebase frequency
 
# check timestep size
  - [ be32, 0x016c9f8c, 0xff9fe000 ] # fcmpu cr7,f31,f28    // compare current delta time to maximum timestep
  - [ be32, 0x016c9f90, 0x419c0008 ] # blt +0x08            // don't return the maximum timestep size
 
# set maximum timestep
  - [ be32, 0x016c9f94, 0xffe0e090 ] # fmr f31,f28          // move maximum timestep to be returned
 
# cleanup
   - [ be32, 0x016c9f98, 0x7e94a278 ] # xor r20,r20,r20      // zero r20
  - [ be32, 0x016c9f9c, 0x7e94a278 ] # xor r19,r19,r19      // zero r19
  - [ be32, 0x016c9fa0, 0x4e800020 ] # blr                  // return
 
# constants
  - [ be32, 0x016c9fa4, 0x4c989680 ] # timebase frequency as hexfloat (80mhz)
  - [ bef32, 0x016c9fa8, 0.05000000 ] # maximum timestep size (50ms or 20FPS)
</syntaxhighlight>
</syntaxhighlight>


Line 184: Line 351:
: '''Notes:''' Can disable Write Color Buffers for 20% faster performance. Enable this patch if you experience flickering.
: '''Notes:''' Can disable Write Color Buffers for 20% faster performance. Enable this patch if you experience flickering.
<syntaxhighlight lang="yaml">
<syntaxhighlight lang="yaml">
# 1.0.1
PPU-83681f6110d33442329073b72b8dc88a2f677172: # BLUS30443
PPU-83681f6110d33442329073b72b8dc88a2f677172: # BLUS30443
# OPTIONAL: Disable dynamic exposure (can turn off WCB for 20% faster performance)
  - [ be16, 0x00025edc, 0x981f ]
# Enable this if you experience flickering
 
# - [ be16, 0x00025EDC, 0x981f ]
PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # BLES00932
  - [ be16, 0x00026ac4, 0x981f ]
</syntaxhighlight>
 
===Skip Intro Videos===
: '''Author:''' [https://github.com/RipleyTom GalCiv]
: '''Game versions:''' BLUS30443, BLES00932
: '''Patch version:''' 1.0
: '''Notes:''' NA
<syntaxhighlight lang="yaml">
PPU-83681f6110d33442329073b72b8dc88a2f677172: # BLUS30443
  - [ be32, 0x008eef78, 0x38000003 ] # Intro logos skip
  - [ be32, 0x008eef7c, 0x901c0100 ]


PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # BLES00932
PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # BLES00932
# OPTIONAL: Disable dynamic exposure (can turn off WCB for 20% faster performance)
  - [ be32, 0x008f0928, 0x38000003 ] # Intro logos skip
# Enable this if you experience flickering
  - [ be32, 0x008f092c, 0x901c0100 ]
- [ be16, 0x00026AC4, 0x981f ]
</syntaxhighlight>
</syntaxhighlight>


===21:9 Patch===
===21:9 Aspect Ratio===
: '''Author:''' [https://github.com/Whatcookie Whatcookie]
: '''Author:''' [https://github.com/Whatcookie Whatcookie]
: '''Game versions:''' BLUS30443, BLES00932
: '''Game versions:''' BLUS30443, BLES00932
: '''Patch version:''' NA
: '''Patch version:''' 1.0
: '''Notes:''' UI Elements will be stretched
: '''Notes:''' UI Elements will be stretched. Users need to enable the "Stretch To Display Area" option in RPCS3 for this patch to work.
<syntaxhighlight lang="yaml">
<syntaxhighlight lang="yaml">
PPU-83681f6110d33442329073b72b8dc88a2f677172: # Demon's Souls BLUS30443
PPU-83681f6110d33442329073b72b8dc88a2f677172: # BLUS30443
   - [ be32, 0x018CEFBC, 0x4017B9AA ] #21:9 aspect ratio
   - [ be32, 0x018cefbc, 0x4017b9aa ] # 21:9 aspect ratio
   - [ be32, 0x0190433C, 0x4017B9AA ]
   - [ be32, 0x0190433c, 0x4017b9aa ]


PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # Demon's Souls BLES00932
PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # BLES00932
   - [ be32, 0x018CF13C, 0x4017B9AA ] #21:9 aspect ratio
   - [ be32, 0x018cf13c, 0x4017b9aa ] # 21:9 aspect ratio
   - [ be32, 0x01904494, 0x4017B9AA ]
   - [ be32, 0x01904494, 0x4017b9aa ]
</syntaxhighlight>
</syntaxhighlight>


===Skip Intro Videos===
===32:9 Aspect Ratio===
: '''Author:''' [https://github.com/RipleyTom RipleyTom/Galciv]
: '''Author:''' [https://github.com/Whatcookie Whatcookie]
: '''Game versions:''' BLUS30443, BLES00932
: '''Game versions:''' BLUS30443, BLES00932
: '''Patch version:''' NA
: '''Patch version:''' 1.0
: '''Notes:''' UI Elements will be stretched. Users need to enable the "Stretch To Display Area" option in RPCS3 for this patch to work.
<syntaxhighlight lang="yaml">
<syntaxhighlight lang="yaml">
PPU-83681f6110d33442329073b72b8dc88a2f677172: # Demon's Souls BLUS30443
PPU-83681f6110d33442329073b72b8dc88a2f677172: # BLUS30443
   - [ be32, 0x008EEF78, 0x38000003 ] # Intro logos skip
   - [ bef32, 0x018cefbc, 3.5555556 ] # 32:9 aspect ratio
   - [ be32, 0x008EEF7C, 0x901C0100 ]
   - [ bef32, 0x0190433c, 3.5555556 ]


PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # Demon's Souls BLES00932
PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # BLES00932
   - [ be32, 0x008F0928, 0x38000003 ] # Intro logos skip
   - [ bef32, 0x018cf13c, 3.5555556 ] # 32:9 aspect ratio
   - [ be32, 0x008F092C, 0x901C0100 ]
   - [ bef32, 0x01904494, 3.5555556 ]
</syntaxhighlight>
</syntaxhighlight>


Line 282: Line 460:
: '''Game versions:''' BCUS98147, BCES00050
: '''Game versions:''' BCUS98147, BCES00050
: '''Patch version:''' NA
: '''Patch version:''' NA
: '''Notes:''' Totally unlocks FPS during gameplay. Sadly the cloth physics go nuts, despite the gameplay working perfectly. However, note that even without this patch you may want to limit the framerate to 60FPS, else the cutscenes will playback too fast.
: '''Notes:''' Totally unlocks FPS during gameplay. Sadly the cloth physics go nuts at 60 FPS, despite the gameplay working perfectly. You can however set the fps limit to 50 and the cloth physics will work perfectly! However, note that even without this patch you may want to limit the framerate to 60FPS, else the cutscenes will playback too fast.  
<syntaxhighlight lang="yaml">
<syntaxhighlight lang="yaml">
PPU-66404421d1f8ed7dd0b2898e1d015a44bf273bf8: # Folklore [BCES00050]
PPU-66404421d1f8ed7dd0b2898e1d015a44bf273bf8: # Folklore [BCES00050]
Line 321: Line 499:


===21:9 Patch===
===21:9 Patch===
: '''Author:'''Unknown RPCS3 Discord member
: '''Author:''' Unknown RPCS3 Discord member
: '''Game versions:''' NPEA90002, might work for US/JPN also with adjustments
: '''Game versions:''' NPEA90002, might work for US/JPN also with adjustments
: '''Patch version:''' NA
: '''Patch version:''' NA
Line 550: Line 728:
==NieR==
==NieR==


===60 FPS Patch===
===FPS Patch===
: '''Author:''' [https://github.com/Whatcookie Whatcookie]
: '''Author:''' [https://github.com/Whatcookie Whatcookie]
: '''Game versions:''' BLUS30481, BLES00826, BLJM60223
: '''Game versions:''' BLUS30481, BLES00826, BLJM60223
: '''Patch version:''' NA
: '''Patch version:''' 2.1
: '''Notes:''' Use vSync if you have a 60hz display, otherwise use the builtin frame-limiter. Game speed will be unstable if you do not have a constant 30 or 60 FPS.
: '''Notes:''' Updated with a new version that has correct game speed at any framerate, you no longer need to set the Framelimiter to 30 or 60.
<syntaxhighlight lang="yaml">
<syntaxhighlight lang="yaml">
PPU-13950b2e29e05a115fe317815d3da9d2b2baee65: # BLUS30481/BLES00826
PPU-13950b2e29e05a115fe317815d3da9d2b2baee65: # BLUS30481, BLES00826
   - [ be32, 0x00f7c3b8, 0x386003e8 ] # li r3, 3e8
# "unlock" framerate
   - [ be32, 0x00f7c3b8, 0x386001f5 ] # li r3, 1f5
 
  - [ be32, 0x00711b50, 0x489c3ef1 ] # jump to code cave
 
# get mftb
  - [ be32, 0x010d5a40, 0x7ccc42e6 ] # mftb r6            // Move from timebase register (clock)
 
# get mftb delta
  - [ be32, 0x010d5a44, 0x3ca0010e ] # lis r5,0x010e      // load high bits of address (0x010e23c8)
  - [ be32, 0x010d5a48, 0x60a523c8 ] # ori r5,r5,0x23c8    // load low bits of address
  - [ be32, 0x010d5a4c, 0x7c85202a ] # ldx r4,r5,r4        // load previous frames mftb reading
  - [ be32, 0x010d5a50, 0xf8c50000 ] # std r6,0x0(r5)      // store this frames mftb reading
  - [ be32, 0x010d5a54, 0x7cc43050 ] # subf r6,r4,r6      // subtract previous mftb reading from this mftb frames reading
 
# mftb delta to float
  - [ be32, 0x010d5a58, 0xf8c50080 ] # std r6,0x80(r5)    // store mftb delta (to be loaded into FPR)
  - [ be32, 0x010d5a5c, 0xcba50080 ] # lfd f29,0x80(r5)    // load mftb delta into FPR
  - [ be32, 0x010d5a60, 0xffa0ee9c ] # fcfid f29,f29      // convert integer to double
  - [ be32, 0x010d5a64, 0xffa0e818 ] # frsp f29,f29        // round to single precision
 
# mftb delta to seconds
  - [ be32, 0x010d5a68, 0x3c80010d ] # r4,0x10d            // load high bits constants pointer
  - [ be32, 0x010d5a6c, 0x60845a40 ] # ori r4,r4,0x5a40    // load low bits of constants pointer
  - [ be32, 0x010d5a70, 0xc384003c ] # lfs f28,0x3c(r4)    // load timebase frequency
  - [ be32, 0x010d5a74, 0xec3de024 ] # fdivs f1,f29,f28    // divide timebase delta by timebase frequency
 
# return
  - [ be32, 0x010d5a78, 0x4e800020 ] # blr                // return
 
# constants
  - [ be32, 0x010d5a7c, 0x4c989680 ] # timebase frequency as hexfloat (80mhz)


PPU-f098ee8410599c81c89f90d698340a078dc69a90: # BLJM60223
PPU-f098ee8410599c81c89f90d698340a078dc69a90: # BLJM60223
   - [ be32, 0x00f7cbcc, 0x386003e8 ] # li r3, 3e8
# "unlock" framerate
   - [ be32, 0x00f7cbcc, 0x386001f5 ] # li r3, 1f5
 
  - [ be32, 0x00711d58, 0x489c48e9 ] # jump to code cave
 
# get mftb
  - [ be32, 0x010d6640, 0x7ccc42e6 ] # mftb r6            // Move from timebase register (clock)
 
# get mftb delta
  - [ be32, 0x010d6644, 0x3ca0010e ] # lis r5,0x010e      // load high bits of address (0x010e23e8)
  - [ be32, 0x010d6648, 0x60a523e8 ] # ori r5,r5,0x23e8    // load low bits of address
  - [ be32, 0x010d664c, 0x7c85202a ] # ldx r4,r5,r4        // load previous frames mftb reading
  - [ be32, 0x010d6650, 0xf8c50000 ] # std r6,0x0(r5)      // store this frames mftb reading
  - [ be32, 0x010d6654, 0x7cc43050 ] # subf r6,r4,r6      // subtract previous mftb reading from this mftb frames reading
 
# mftb delta to float
  - [ be32, 0x010d6658, 0xf8c50080 ] # std r6,0x80(r5)    // store mftb delta (to be loaded into FPR)
  - [ be32, 0x010d665c, 0xcba50080 ] # lfd f29,0x80(r5)    // load mftb delta into FPR
  - [ be32, 0x010d6660, 0xffa0ee9c ] # fcfid f29,f29      // convert integer to double
  - [ be32, 0x010d6664, 0xffa0e818 ] # frsp f29,f29        // round to single precision
 
# mftb delta to seconds
  - [ be32, 0x010d6668, 0x3c80010d ] # r4,0x10d            // load high bits constants pointer
  - [ be32, 0x010d666c, 0x60846640 ] # ori r4,r4,0x6640    // load low bits of constants pointer
  - [ be32, 0x010d6670, 0xc384003c ] # lfs f28,0x3c(r4)    // load timebase frequency
  - [ be32, 0x010d6674, 0xec3de024 ] # fdivs f1,f29,f28    // divide timebase delta by timebase frequency
 
# return
  - [ be32, 0x010d6678, 0x4e800020 ] # blr                // return
 
# constants
  - [ be32, 0x010d667c, 0x4c989680 ] # timebase frequency as hexfloat (80mhz)
</syntaxhighlight>
 
===21:9 Aspect Ratio===
: '''Author:''' [https://github.com/dio-gh dio]
: '''Game versions:''' BLUS30481, BLES00826
: '''Patch version:''' 1.0
: '''Notes:''' HUD Elements will be stretched and misplaced. Users need to enable the "Stretch To Display Area" option in RPCS3 for this patch to work.
<syntaxhighlight lang="yaml">
PPU-13950b2e29e05a115fe317815d3da9d2b2baee65: # BLUS30481, BLES00826
  - [ bef32, 0x01120398, 2.3703704 ] # HUD elements will look wrong & needs stretch to display area
</syntaxhighlight>
</syntaxhighlight>


Line 994: Line 1,244:


===1280x720 Patch===
===1280x720 Patch===
: '''Author:''' [https://github.com/TGEnigma TGEnigma]
: '''Author:''' [https://github.com/TGEnigma TGEnigma], [https://github.com/slashiee slashiee]
: '''Game versions:''' NPUB31204
: '''Game versions:''' NPUB31204, NPEB01347, BLUS30244, BLES00425, BLJM60112, NPUB90194, NPEB90132, NPJB90162
: '''Patch version:''' NA
: '''Patch version:''' 1.2
: '''Notes:''' This game originally rendered at 880x720. With this patch, it will render at a resolution of 1280x720.
: '''Notes:''' This game originally rendered at 880x720. With this patch, it will render at a resolution of 1280x720.
<syntaxhighlight lang="yaml">
<syntaxhighlight lang="yaml">
# Game: Sonic Unleashed (NPUB31204)
# Game: Sonic Unleashed Digital
# Subject: Internal 1280x720 render resolution
# Subject: Internal 1280x720 render resolution
# Authors: TGE
# Authors: TGE
su1280x720_NPUB31204: &su1280x720_NPUB31204
su1280x720_Digital: &su1280x720_Digital
    # Main backbuffer (880x720)
# Main backbuffer (880x720)
    - [ be16, 0x013D197A, 1280 ]
  - [ be16, 0x013D197A, 1280 ]
   
 
    # Other buffers
# Other buffers
    - [ be16, 0x0144A53E, 1280 ]
  - [ be16, 0x0144A53E, 1280 ]
    - [ be16, 0x0144A5F6, 1280 ]
  - [ be16, 0x0144A5F6, 1280 ]
    - [ be16, 0x0144A652, 1280 ]
  - [ be16, 0x0144A652, 1280 ]
 


# Sonic Unleashed (NPUB31204)
# Sonic Unleashed (NPUB31204)
PPU-88b57d524597bbee38df3a452eb0e86c5e789f73: # NPUB31204
PPU-88b57d524597bbee38df3a452eb0e86c5e789f73: # NPUB31204
    - [ load, su1280x720_NPUB31204 ]
  - [ load, su1280x720_Digital ]
 
# Sonic Unleashed (NPEB01347)
PPU-d0bf7a33f1763725609feaa87e0e4d18ab9e8acd: # NPEB01347
  - [ load, su1280x720_Digital ]
 
# Game: Sonic Unleashed (BLUS30244, BLES00425) v1.00
# Subject: Internal 1280x720 render resolution
# Authors: TGE, Michele
su1280x720_USEUPhysical: &su1280x720_USEUPhysical
# Main backbuffer (880x720)
  - [ be16, 0x00DD85B6, 1280 ]
 
# Other buffers
  - [ be16, 0x013608D6, 1280 ]
  - [ be16, 0x0136098E, 1280 ]
  - [ be16, 0x013609EA, 1280 ]
 
 
# Sonic Unleashed (BLUS30244, BLES00425) v1.00
PPU-6ebcaf71dc08cd612acb82f8e32738a8693d9347: # BLUS30244, BLES00425 v1.00
  - [ load, su1280x720_USEUPhysical ]
 
# Game: Sonic World Adventure (BLJM60112) v1.00
# Subject: Internal 1280x720 render resolution
# Authors: TGE, Michele
swa1280x720_BLJM60112: &swa1280x720_BLJM60112
# Main backbuffer (880x720)
  - [ be16, 0x00DEC49E, 1280 ]
 
# Other buffers
  - [ be16, 0x013644FE, 1280 ]
  - [ be16, 0x013645B6, 1280 ]
  - [ be16, 0x01364612, 1280 ]
 
 
# Sonic World Adventure (BLJM60112) v1.00
PPU-fbb2149d0f9ad51398eed59cbd26db5367d6376e: # BLJM60112 v1.00
  - [ load, swa1280x720_BLJM60112 ]
 
# Game: Sonic Unleashed / Sonic World Adventure v1.02
# Subject: Internal 1280x720 render resolution
# Authors: TGE, Michele
su1280x720_v102: &su1280x720_v102
# Main backbuffer (880x720)
  - [ be16, 0x00DFD7C6, 1280 ]
 
# Other buffers
  - [ be16, 0x01371B8E, 1280 ]
  - [ be16, 0x01371C46, 1280 ]
  - [ be16, 0x01371CA2, 1280 ]
 
 
# Sonic Unleashed (BLUS30244) v1.02
PPU-c2911b4248ca2090819299f90d1a2d37f50fd5a8: # BLUS30244 v1.02
  - [ load, su1280x720_v102 ]
 
# Sonic Unleashed (BLES00425) v1.02
PPU-dfe27b6a57f3fd01f310e402e97a297836b46ceb: # BLES00425 v1.02
  - [ load, su1280x720_v102 ]
 
# Sonic World Adventure (BLJM60112) v1.02
PPU-4b48caf21e1f10d47aa9a20acce8ecd8c055755e: # BLJM60112 v1.02
  - [ load, su1280x720_v102 ]
 
# Game: Sonic Unleashed Demo (NPUB90194)
# Subject: Internal 1280x720 render resolution
# Authors: TGE, Michele
su1280x720_NPUB90194_Demo: &su1280x720_NPUB90194_Demo
# Main backbuffer (880x720)
  - [ be16, 0x013C4B5A, 1280 ]
 
# Other buffers
  - [ be16, 0x01439086, 1280 ]
  - [ be16, 0x0143913E, 1280 ]
  - [ be16, 0x0143919A, 1280 ]
 
 
# Sonic Unleashed Demo (NPUB90194)
PPU-bd76a566ab62386b90443711206c3f5063b5ab38: # NPUB90194
  - [ load, su1280x720_NPUB90194_Demo ]
 
# Game: Sonic Unleashed Demo (NPEB90132)
# Subject: Internal 1280x720 render resolution
# Authors: TGE, Michele
su1280x720_NPEB90132_Demo: &su1280x720_NPEB90132_Demo
# Main backbuffer (880x720)
  - [ be16, 0x013C4B62, 1280 ]
 
# Other buffers
  - [ be16, 0x0143908E, 1280 ]
  - [ be16, 0x01439146, 1280 ]
  - [ be16, 0x014391A2, 1280 ]
 
# Sonic Unleashed Demo (NPEB90132)
PPU-7d9105cac7fb9c8ebbbd791693c27986b12c98ad: # NPEB90132
  - [ load, su1280x720_NPEB90132_Demo ]
 
# Game: Sonic World Adventure Demo (NPJB90162)
# Subject: Internal 1280x720 render resolution
# Authors: TGE, Michele
swa1280x720_NPJB90162_Demo: &swa1280x720_NPJB90162_Demo
# Main backbuffer (880x720)
  - [ be16, 0x013C4B56, 1280 ]
 
# Other buffers
  - [ be16, 0x01439086, 1280 ]
  - [ be16, 0x0143913E, 1280 ]
  - [ be16, 0x0143919A, 1280 ]
 
# Sonic World Adventure Demo (NPJB90162)
PPU-8bc924308cd72132d78bae70fb9a1fa82af03c19: # NPJB90162
  - [ load, swa1280x720_NPJB90162_Demo ]
</syntaxhighlight>
 
===21:9 Patch===
: '''Author:''' [https://github.com/slashiee slashiee]
: '''Game versions:''' BLUS30244 (v1.02)
: '''Patch version:''' NA
: '''Notes:''' To change this game's aspect ratio, divide the width of your resolution by it's height to get the new value.
<syntaxhighlight lang="yaml">
# Game: Sonic Unleashed (BLUS30244) v1.02
# Subject: 21:9 Aspect Ratio
# Authors: slashiee
# Notes: Divide width by height to get the float value.
suAspectRatio_BLUS30244_v102: &suAspectRatio_BLUS30244_v102
# Aspect ratio
  - [ bef32, 0x0275DB2C, 2.37037037 ]
 
# Sonic Unleashed (BLUS30244) v1.02
PPU-c2911b4248ca2090819299f90d1a2d37f50fd5a8: # BLUS30244 v1.02
  - [ load, suAspectRatio_BLUS30244_v102 ]
</syntaxhighlight>
</syntaxhighlight>


Line 1,043: Line 1,425:
PPU-120fb71f7352d62521c639b0e99f960018c10a56: # BCES01584, BCES01585, BCUS98174 v1.11
PPU-120fb71f7352d62521c639b0e99f960018c10a56: # BCES01584, BCES01585, BCUS98174 v1.11
   - [ be32, 0x00a80350, 0x48000ab8 ] # unconditonally branch to disable MLAA
   - [ be32, 0x00a80350, 0x48000ab8 ] # unconditonally branch to disable MLAA
</syntaxhighlight>
===Disable SPU lighting===
: '''Author:''' [https://github.com/Xcedf ZEROx]
: '''Game versions:''' BCES01584 (v1.00, v1.11), BCUS98174 (v1.00, v1.11), BCES01585 (v1.00, v1.11)
: '''Patch version:''' NA
: '''Notes:''' Removes some broken effects and improves performance.
<syntaxhighlight lang="yaml">
PPU-9df60dc1aa5005a0c80e9066e4951dc0471553e6: # BCES01584, BCUS98174, BCES01585 v1.00
  - [ be32, 0x00afeb24, 0x48000010 ] # SPU lighting
PPU-120fb71f7352d62521c639b0e99f960018c10a56: # BCES01584, BCES01585, BCUS98174 v1.11
  - [ be32, 0x00b294ec, 0x48000010 ] # SPU lighting
</syntaxhighlight>
==Uncharted 3==
===Disable inbuilt MLAA===
: '''Author:''' [https://github.com/Whatcookie Whatcookie]
: '''Game versions:''' BCES01175 (v1.00, v1.19), BCUS98233 (v1.00, v1.19), BCES01670 (v1.10, v1.19)
: '''Patch version:''' 1.0
: '''Notes:''' Allows for the use of Resolution Scaling in the title and also improves performance. Has issues similar to the TLOU MLAA patch.
<syntaxhighlight lang="yaml">
PPU-49c96996b6f3c0b32422375978c41e0c7ed95183: # BCES01175, BCUS98233 1.00
  - [ be32, 0x00720340, 0x480009ac ] # MLAA
PPU-664fb0e4a94c62c15a6474841c202fb2bf80ce16: # BCES01670 1.10
  - [ be32, 0x00728cac, 0x480009ac ] # MLAA
PPU-02a88c3c6cd415b0bb81f1606bc743835881a4ba: # BCES01175, BCUS98233, BCES01670 1.19
  - [ be32, 0x0073a1d8, 0x480009ac ] # MLAA
</syntaxhighlight>
===Disable SPU lighting===
: '''Author:''' [https://github.com/Xcedf ZEROx]
: '''Game versions:''' BCES01175 (v1.00, v1.19), BCUS98233 (v1.00, v1.19), BCES01670 (v1.10, v1.19)
: '''Patch version:''' 1.0
: '''Notes:''' Removes some broken effects and improves performance.
<syntaxhighlight lang="yaml">
PPU-49c96996b6f3c0b32422375978c41e0c7ed95183: # BCES01175, BCUS98233 1.00
  - [ be32, 0x0074c2f8, 0x48000010 ] # SPU lighting
PPU-664fb0e4a94c62c15a6474841c202fb2bf80ce16: # BCES01670 1.10
  - [ be32, 0x00754da0, 0x48000010 ] # SPU lighting


# Made by the most sexy person in RPCS3 with the power of what you may call enhancements. Whatcookiethefirst!
PPU-02a88c3c6cd415b0bb81f1606bc743835881a4ba: # BCES01175, BCUS98233, BCES01670 1.19
  - [ be32, 0x007653c0, 0x48000010 ] # SPU lighting
</syntaxhighlight>
</syntaxhighlight>



Revision as of 14:54, 3 April 2020

This page lists the current existing community patches for RPCS3's game patching system. To use them, create a patch.yml file on RPCS3's root directory and add one or more of the following patches to it.

Refer to the Canary page for patches that are in-development, severely buggy or generally not recommended for use.

How to create patch.yml

To create a patch.yml file:

  1. Open your preferred text editor (e.g: Notepad++, VSCode, Sublime).
  2. You can find a list of all patches available for various games below. Copy the lines of code for the patch that you wish to apply. Do not try to edit any of the patches unless you know what you are doing.
  3. Click Save and name the file patch.yml. Do NOT change the capitalization or use any other name, RPCS3 will not be able to apply the patches.
  4. Save the file in relevant location:
    Windows: RPCS3's root directory (where rpcs3.exe is located)
    Linux: ~/.config/rpcs3/
  5. Press save and boot the game.

How to identify the PPU hash from your executable

If the patch that you wish to use already mentions the correct PPU hash, you can ignore this section. However, patches for some games (such as Persona 5) mention only a single hash and leave it up to the user to identify the PPU hash for their version and apply the same. In such cases, follow the instructions mentioned here:

  1. Boot the game for a minute and then close the emulator.
  2. Open RPCS3.log (or just RPCS3 with the Notepad icon).
  3. Search for the string PPU executable hash:.
  4. Copy the value that looks like PPU-b8c34f774adb367761706a7f685d4f8d9d355426. This is the PPU hash of your game.
  5. Open patch.yml with any text editor (e.g: Notepad++, VSCode, Sublime).
  6. Find the existing PPU hash in the patch and replace the same with the PPU hash you obtained in Step 4.

SPU MLAA

SPU MLAA removal patch

Author: Whatcookie
Patch version: 1.5
Notes: Removes Morphological Anti-Aliasing, known as MLAA, a form of post process anti-aliasing which is done using the CELL's SPUs instead of the RSX for extra performance. These patches are generally game and version agnostic, and currently work with 37 titles.

<syntaxhighlight lang="yaml"> SPU-9001b44fd7278b5a6fa5385939fe928a0e549394: # Soul Calibur V, Yakuza Ishin, Journey, Yakuza 5, Tokyo Jungle, Oddworld: Stranger's Wrath HD, Soul Calibur Lost Swords, Binary Domain, Puppeteer

  1. SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
 - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
 - [ be32, 0x0000349c, 0x40800017 ] # il r23 0 # Comment this line out to fix the blackscreen in Puppeteer

SPU-969cf3e9db75f52a6b41074ccbff74106b709854: # Sly 4, Motorstorm Apocalypse, Motorstorm RC, DmC DMC, Red Faction Armageddon, Ace Combat Assault Horizon

  1. SPUNAME: 'objs/release/edgepost-mlaa-task.' // NOTE: has asserts!
 - [ be32, 0x0000325c, 0x40800003 ] # il r3 0
 - [ be32, 0x00004C00, 0x40800091 ] # il r17 1

SPU-931132fd48a40bce0bec28e21f760b1fc6ca4364: # captain america, Yakuza dead souls, Need for Speed Shift 2

  1. SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
 - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
 - [ be32, 0x0000349c, 0x40800017 ] # il r23 0

SPU-7b5ea49122ec7f023d4a72452dc7a9208d9d6dbf: # Dragon age 2

  1. SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
 - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
 - [ be32, 0x0000349c, 0x40800017 ] # il r23 0

SPU-e3780fe1dc8953f849ac844ec9688ff4da3ca3ae: # Metro Last Light

  1. SPUNAME: 'u:\bin_ps3_SNC\edgepost_mlaa_ta'
 - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
 - [ be32, 0x000034a4, 0x40800017 ] # il r23 0

SPU-794795c449beef176d076816284849d266f55f99: # Macross 30

  1. SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
 - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
 - [ be32, 0x000034a4, 0x40800017 ] # il r23 0

SPU-df5b1c3353cc36bb2f0fb59197d849bb99c3fecd: # Shadow of the collosus, Medieval Moves: Deadmund's Quest, Sports Champions 2

  1. SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
 - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
 - [ be32, 0x0000349c, 0x40800017 ] # il r23 0

SPU-5177cbc4bf45c8a0a6968c2a722da3a9e6cfb28b: # Prince of Persia: The Sands of Time, Prince of Persia: The Two Thrones, Prince of Persia: Warrior Within

  1. SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
 - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
  1. - [ be32, 0x0000349c, 0x40800017 ] # il r23 0 # blackscreen

SPU-ac189d7f87091160a94e69803ac0cff0a8bb7813: # ico mlaa

  1. SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
 - [ be32, 0x000031f4, 0x40800003 ] # il r3 0
 - [ be32, 0x0000349c, 0x40800017 ] # il r23 0

SPU-530c255936b07b25467a58e24ceff5fd4e2960b7: # gow 3 mlaa // Almost certainly specific to GOW3

  1. SPUNAME: 'mlaascanline.PS3_Release/mlaasca'
 - [ be32, 0x00005948, 0x40800094 ] # il r20 1
 - [ be32, 0x0000690c, 0x40800027 ] # il r39 0

SPU-2239af4827b17317522bd6323c646b45b34ebf14: # gow 3 patch 1.03

  1. SPUNAME: 'mlaascanline.PS3_Release/mlaasca'
 - [ be32, 0x00005948, 0x40800094 ] # il r20 1
 - [ be32, 0x0000690c, 0x40800027 ] # il r39 0

SPU-976d2128f08c362731413b75c934101b76c3d73b: # Early versions of LBP2

  1. SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
 - [ be32, 0x000036d4, 0x4080001d ] # il r29 0
 - [ be32, 0x000033d0, 0x40800005 ] # il r5 0

SPU-a129a01a270246c85df18eee0e959ef4263b6510: # Other early versions of LBP2

  1. SPUNAME: 'C:\dev\CW_br2_move_final-output\'
 - [ be32, 0x00003744, 0x4080001e ] # il r30 0
 - [ be32, 0x00003430, 0x40800006 ] # il r6 0

SPU-702d0205a89d445d15dc0f96548546c4e2e7a59f: # Little big planet 2 and 3

  1. SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
 - [ be32, 0x000036bc, 0x4080001c ] # il r28 0
 - [ be32, 0x000033c0, 0x40800005 ] # il r5 0

SPU-45f98378f0837fc6821f63576f65d47d10f9bbcb: # yakuza 0, yakuza kiwami

  1. SPUNAME: 'PS3_Release\edgepost-mlaa-task.s'
 - [ be32, 0x000033b0, 0x40800017 ] # il r23 0
 - [ be32, 0x0000373c, 0x4080001f ] # il r31 0

SPU-82b3399c8e6533ba991eedb0e139bf20c7783bac: # Twisted Metal

  1. SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
 - [ be32, 0x000033b0, 0x40800017 ] # il r23 0
 - [ be32, 0x0000373c, 0x4080001f ] # il r31 0

SPU-191fe1c92c8360992b3240348e70ea37d50812d4: # Alice madness returns

  1. SPUNAME: 'E:\Alice2\Development\Intermedia'
 - [ be32, 0x00003344, 0x40800003 ] # il r3 0
 - [ be32, 0x000037b4, 0x4020007f ] # spu nop

SPU-7cd211ff1cbd33163eb0711440dccbb3c1dbcf6c: # God of War Ascension

  1. SPUNAME: 'z:/export/jenkins/workspace/int6'
 - [ be32, 0x00004440, 0x40800002 ] # il r2 0
 - [ be32, 0x000056C4, 0x4080008a ] # il r10 0

SPU-1549476fe258150ff9f902229ffaed69a932a9c1: # God of War Ascension

  1. SPUNAME: 'Z:/output/EURint6/SPUMLAATask/PS'
 - [ be32, 0x00004440, 0x40800002 ] # il r2 0
 - [ be32, 0x000056C4, 0x4080008a ] # il r10 0

SPU-58fb5172bd99336a4ac96eefb00e739ce41f788b: # test drive unlimited 2

  1. SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
  2. TODO: check this game later

SPU-273bd5a0640e71876c11878ba9496d928d608f9e: # Socom 4

  1. SPUNAME: '.imogen/ps3_gold/edgemlaa.elf'
  2. TODO: check this game later, doesn't yet go ingame

SPU-239ea3f6ee242d11d857c844820aeda5157691c3: # Also Socom 4

  1. SPUNAME: '.imogen/ps3_gold_3d/edgemlaa3d.e'
  2. TODO: check this (yes, two different elfs for the same game)

SPU-1dbc4a6d4925b004b25b41d9ae2cf7a6e60e793a: # Starhawk single player demo

  1. SPUNAME: 'C:\spin\Branch\SPDemo\RT\PS3_Can' // Different for full game?
  2. TODO: check this, doesn't yet go ingame

SPU-8acb4f81726084c67d74ceceb5461681fcabf45b: # Retro/Grade

  1. SPUNAME: 'PS3_Release/edgepost-mlaa-task.s'
  2. TODO: check this

SPU-cc438f40a4d7d2ce312a064b8a99ae1b6217bd71: # Ace Combat Infinity

  1. SPUNAME: 'PS3_Release\edgepost-mlaa-task.s'
  2. TODO: This game is online only, and if this variant doesn't appear in other titles it will remain unpatched

</syntaxhighlight>

Army of TWO: The 40th Day

Unlock FPS patch

Author: Whatcookie
Game versions: BLUS30408/BLES00659
Patch version: NA
Notes: Max framerate with the patch is Vblank frequency/2.

<syntaxhighlight lang="yaml"> PPU-97355e97c701cea87a0ed08bce085cac4949dade: # Army of TWO: The 40th Day [BLUS30408/BLES00659] v1.00

 - [ be32, 0x003c5f9c, 0x60000000 ]
 - [ be32, 0x003c6000, 0x60000000 ]
 - [ be32, 0x003c6010, 0x60000000 ]

PPU-66e68ab81cb8c107687e708170fd7f13cfdd641e: # Update v1.03 (tested only US update)

 - [ be32, 0x003cc00c, 0x60000000 ]
 - [ be32, 0x003cc070, 0x60000000 ]
 - [ be32, 0x003cc080, 0x60000000 ]

</syntaxhighlight>

Asura's Wrath

Unlock FPS patch

Author: Whatcookie
Game versions: BLUS30721
Patch version: NA
Notes: Max framerate with the patch is Vblank frequency/2. While most of the game works without any issue, some of the button mashing QTEs are tied to framerate. It's quite possible to play through the game at 60FPS if you are good at button mashing, but 120FPS and higher aren't really playable in several missions. Without the patch, adjusting Vblank frequency will let the game cap at about 57FPS.

<syntaxhighlight lang="yaml"> PPU-83096111daff850cc92b637aec1780c4079e1c58: # Asura's Wrath [BLUS30721]

 - [ be32, 0x008bbd04, 0x60000000 ]
 - [ be32, 0x008bbd64, 0x60000000 ]
 - [ be32, 0x008bbd68, 0x60000000 ]

</syntaxhighlight>

Dark Souls

Unlock FPS Patch

Author: Whatcookie
Game versions: BLUS30782
Patch version: 1.0
Notes: For people who would like to play the unpatched version of dark souls at decent framerates (unpatched PC version is equivalent to 1.06 on consoles!)

<syntaxhighlight lang="yaml"> PPU-3577a3e8efa233c68dedce81a3d0a63dab05dbed: # Dark souls 1.0 BLUS30782

  1. 60fps noskip
 - [be32, 0x00146e40, 0x38800002 ] # li r4 0x2
 - [be32, 0x00146e44, 0x989f070c ]
 - [be32, 0x00146e48, 0x989f070d ]
  1. delta time
 - [ be32, 0x001423e8, 0x494447e9 ] # jump to code cave
  1. get mftb
 - [ be32, 0x01586bd0, 0x7eac42e6 ] # mftb r21              // Move from timebase register (clock)
  1. get mftb delta
 - [ be32, 0x01586bd4, 0x3ec0017d ] # lis r22,0x017d        // load high bits of address (0x017de3f8)
 - [ be32, 0x01586bd8, 0x62d6e3f8 ] # ori r22,r22,0xe3f8    // load low bits of address
 - [ be32, 0x01586bdc, 0x7e96a02a ] # ldx r20,r22,r20       // load previous frames mftb reading
 - [ be32, 0x01586be0, 0xfab60000 ] # std r21,0x0(r22)      // store this frames mftb reading
 - [ be32, 0x01586be4, 0x7e74a850 ] # subf r19,r21,r20      // subtract previous mftb reading from this mftb frames reading
  1. mftb delta to float
 - [ be32, 0x01586be8, 0xfa7600e0 ] # std r19,0xe0(r22)     // store mftb delta (to be loaded into FPR)
 - [ be32, 0x01586bec, 0xcbd600e0 ] # lfd f30,0xe0(r22)     // load mftb delta into FPR
 - [ be32, 0x01586bf0, 0xffc0f69c ] # fcfid f30,f30         // convert integer to double
 - [ be32, 0x01586bf4, 0xffc0f018 ] # frsp f30,f30          // round to single precision
  1. mftb delta to seconds
 - [ be32, 0x01586bf8, 0x3e400158 ] # r18,0x158             // load high bits constants pointer
 - [ be32, 0x01586bfc, 0x62526bd0 ] # ori r18,r18,0x6bd0    // load low bits of constants pointer
 - [ be32, 0x01586c00, 0xc3b20054 ] # lfs f29,0x54(r18)     // load timebase frequency constant
 - [ be32, 0x01586c04, 0xc3920058 ] # lfs f28,0x58(r18)     // load maximum timestep size
 - [ be32, 0x01586c08, 0xfffee824 ] # fdiv f31,f30,f29      // divide timebase delta by timebase frequency
  1. check timestep size
 - [ be32, 0x01586c0c, 0xff9fe000 ] # fcmpu cr7,f31,f28     // compare current delta time to maximum timestep
 - [ be32, 0x01586c10, 0x419c0008 ] # blt +0x08             // don't return the maximum timestep size
  1. set maximum timestep
 - [ be32, 0x01586c14, 0xffe0e090 ] # fmr f31,f28           // move maximum timestep to be returned
  1. cleanup
 - [ be32, 0x01586c18, 0x7e94a278 ] # xor r20,r20,r20       // zero r20
 - [ be32, 0x01586c1c, 0x7e94a278 ] # xor r19,r19,r19       // zero r19
 - [ be32, 0x01586c20, 0x4e800020 ] # blr                   // return
  1. constants
 - [ be32, 0x01586c24, 0x4c989680 ]  # timebase frequency as hexfloat (80mhz)
 - [ bef32, 0x01586c28, 0.05000000 ] # maximum timestep size (50ms or 20fps)

</syntaxhighlight>

Demon's Souls

Unlock FPS Patch

Author: Whatcookie, Gibbed
Game versions: BLUS30443, BLES00932
Patch version: 2.1
Notes: Patch version 2.0 and above is not compatible with the settings used for the previous patch. Clocks scale and Vblank rate must be set to the defaults. Vblank rate can be modified to increase the framelimit beyond 60FPS, however it's not recommended as users may encounter physics issues.

<syntaxhighlight lang="yaml"> PPU-83681f6110d33442329073b72b8dc88a2f677172: # BLUS30443

  1. Set 60FPS with no frameskip
  2. by Gibbed
 - [ be16, 0x25ed8, 0x981f ]
  1. delta time
  2. by Whatcookie
 - [ be32, 0x0001b964, 0x496ac2cd ] # jump to code cave
  1. get mftb
 - [ be32, 0x016c7c30, 0x7eac42e6 ] # mftb r21              // Move from timebase register (clock)
  1. get mftb delta
 - [ be32, 0x016c7c34, 0x3ec00185 ] # lis r22,0x0185        // load high bits of address
 - [ be32, 0x016c7c38, 0x3ad62608 ] # addi r22,r22,0x2608   // load low bits of address
 - [ be32, 0x016c7c3c, 0x7e96a02a ] # ldx r20,r22,r20       // load previous frames mftb reading
 - [ be32, 0x016c7c40, 0xfab60000 ] # std r21,0x0(r22)      // store this frames mftb reading
 - [ be32, 0x016c7c44, 0x7e74a850 ] # subf r19,r21,r20      // subtract previous mftb reading from this mftb frames reading
  1. mftb delta to float
 - [ be32, 0x016c7c48, 0xfa760018 ] # std r19,0x18(r22)     // store mftb delta (to be loaded into FPR)
 - [ be32, 0x016c7c4c, 0xcbd60018 ] # lfd f30,0x18(r22)     // load mftb delta into FPR
 - [ be32, 0x016c7c50, 0xffc0f69c ] # fcfid f30,f30         // convert integer to double
 - [ be32, 0x016c7c54, 0xffc0f018 ] # frsp f30,f30          // round to single precision
  1. mftb delta to seconds
 - [ be32, 0x016c7c58, 0x3e40016c ] # r18,0x16c             // load high bits constants pointer
 - [ be32, 0x016c7c5c, 0x3a527c30 ] # addi r18,r18,0x7c30   // load low bits of constants pointer
 - [ be32, 0x016c7c60, 0xc3b20054 ] # lfs f29,0x54(r18)     // load timebase frequency constant
 - [ be32, 0x016c7c64, 0xc3920058 ] # lfs f28,0x58(r18)     // load maximum timestep size
 - [ be32, 0x016c7c68, 0xeffee824 ] # fdivs f31,f30,f29     // divide timebase delta by timebase frequency
  1. check timestep size
 - [ be32, 0x016c7c6c, 0xff9fe000 ] # fcmpu cr7,f31,f28     // compare current delta time to maximum timestep
 - [ be32, 0x016c7c70, 0x419c0008 ] # blt +0x08             // don't return the maximum timestep size
  1. set maximum timestep
 - [ be32, 0x016c7c74, 0xffe0e090 ] # fmr f31,f28           // move maximum timestep to be returned
  1. cleanup
 - [ be32, 0x016c7c78, 0x7e94a278 ] # xor r20,r20,r20       // zero r20
 - [ be32, 0x016c7c7c, 0x7e94a278 ] # xor r19,r19,r19       // zero r19
 - [ be32, 0x016c7c80, 0x4e800020 ] # blr                   // return
  1. constants
 - [ be32, 0x016c7c84, 0x4c989680 ]  # timebase frequency as hexfloat (80mhz)
 - [ bef32, 0x016c7c88, 0.05000000 ] # maximum timestep size (50ms or 20FPS)

PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # BLES00932

  1. Set 60FPS with no frameskip
  2. by Gibbed
 - [ be16, 0x26ac0, 0x981f ]
  1. delta time
  2. by Whatcookie
 - [ be32, 0x0001c534, 0x496ada1d ] # jump to code cave
  1. get mftb
 - [ be32, 0x016c9f50, 0x7eac42e6 ] # mftb r21              // Move from timebase register (clock)
  1. get mftb delta
 - [ be32, 0x016c9f54, 0x3ec00185 ] # lis r22,0x0185        // load high bits of address
 - [ be32, 0x016c9f58, 0x3ad62608 ] # addi r22,r22,0x2608   // load low bits of address
 - [ be32, 0x016c9f5c, 0x7e96a02a ] # ldx r20,r22,r20       // load previous frames mftb reading
 - [ be32, 0x016c9f60, 0xfab60000 ] # std r21,0x0(r22)      // store this frames mftb reading
 - [ be32, 0x016c9f64, 0x7e74a850 ] # subf r19,r21,r20      // subtract previous mftb reading from this mftb frames reading
  1. mftb delta to float
 - [ be32, 0x016c9f68, 0xfa760018 ] # std r19,0x18(r22)     // store mftb delta (to be loaded into FPR)
 - [ be32, 0x016c9f6c, 0xcbd60018 ] # lfd f30,0x18(r22)     // load mftb delta into FPR
 - [ be32, 0x016c9f70, 0xffc0f69c ] # fcfid f30,f30         // convert integer to double
 - [ be32, 0x016c9f74, 0xffc0f018 ] # frsp f30,f30          // round to single precision
  1. mftb delta to seconds
 - [ be32, 0x016c9f78, 0x3e40016c ] # r18,0x16c             // load high bits constants pointer
 - [ be32, 0x016c9f7c, 0x62529f50 ] # ori r18,r18,0x9f50    // load low bits of constants pointer
 - [ be32, 0x016c9f80, 0xc3b20054 ] # lfs f29,0x54(r18)     // load timebase frequency constant
 - [ be32, 0x016c9f84, 0xc3920058 ] # lfs f28,0x58(r18)     // load maximum timestep size
 - [ be32, 0x016c9f88, 0xeffee824 ] # fdivs f31,f30,f29     // divide timebase delta by timebase frequency
  1. check timestep size
 - [ be32, 0x016c9f8c, 0xff9fe000 ] # fcmpu cr7,f31,f28     // compare current delta time to maximum timestep
 - [ be32, 0x016c9f90, 0x419c0008 ] # blt +0x08             // don't return the maximum timestep size
  1. set maximum timestep
 - [ be32, 0x016c9f94, 0xffe0e090 ] # fmr f31,f28           // move maximum timestep to be returned
  1. cleanup
 - [ be32, 0x016c9f98, 0x7e94a278 ] # xor r20,r20,r20       // zero r20
 - [ be32, 0x016c9f9c, 0x7e94a278 ] # xor r19,r19,r19       // zero r19
 - [ be32, 0x016c9fa0, 0x4e800020 ] # blr                   // return
  1. constants
 - [ be32, 0x016c9fa4, 0x4c989680 ]  # timebase frequency as hexfloat (80mhz)
 - [ bef32, 0x016c9fa8, 0.05000000 ] # maximum timestep size (50ms or 20FPS)

</syntaxhighlight>

Disable Dynamic Exposure

Author: Whatcookie
Game versions: BLUS30443, BLES00932
Patch version: 1.0.1
Notes: Can disable Write Color Buffers for 20% faster performance. Enable this patch if you experience flickering.

<syntaxhighlight lang="yaml"> PPU-83681f6110d33442329073b72b8dc88a2f677172: # BLUS30443

 - [ be16, 0x00025edc, 0x981f ]

PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # BLES00932

 - [ be16, 0x00026ac4, 0x981f ]

</syntaxhighlight>

Skip Intro Videos

Author: GalCiv
Game versions: BLUS30443, BLES00932
Patch version: 1.0
Notes: NA

<syntaxhighlight lang="yaml"> PPU-83681f6110d33442329073b72b8dc88a2f677172: # BLUS30443

 - [ be32, 0x008eef78, 0x38000003 ] # Intro logos skip
 - [ be32, 0x008eef7c, 0x901c0100 ]

PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # BLES00932

 - [ be32, 0x008f0928, 0x38000003 ] # Intro logos skip
 - [ be32, 0x008f092c, 0x901c0100 ]

</syntaxhighlight>

21:9 Aspect Ratio

Author: Whatcookie
Game versions: BLUS30443, BLES00932
Patch version: 1.0
Notes: UI Elements will be stretched. Users need to enable the "Stretch To Display Area" option in RPCS3 for this patch to work.

<syntaxhighlight lang="yaml"> PPU-83681f6110d33442329073b72b8dc88a2f677172: # BLUS30443

 - [ be32, 0x018cefbc, 0x4017b9aa ] # 21:9 aspect ratio
 - [ be32, 0x0190433c, 0x4017b9aa ]

PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # BLES00932

 - [ be32, 0x018cf13c, 0x4017b9aa ] # 21:9 aspect ratio
 - [ be32, 0x01904494, 0x4017b9aa ]

</syntaxhighlight>

32:9 Aspect Ratio

Author: Whatcookie
Game versions: BLUS30443, BLES00932
Patch version: 1.0
Notes: UI Elements will be stretched. Users need to enable the "Stretch To Display Area" option in RPCS3 for this patch to work.

<syntaxhighlight lang="yaml"> PPU-83681f6110d33442329073b72b8dc88a2f677172: # BLUS30443

 - [ bef32, 0x018cefbc, 3.5555556 ] # 32:9 aspect ratio
 - [ bef32, 0x0190433c, 3.5555556 ]

PPU-5446a2645880eefa75f7e374abd6b7818511e2ef: # BLES00932

 - [ bef32, 0x018cf13c, 3.5555556 ] # 32:9 aspect ratio
 - [ bef32, 0x01904494, 3.5555556 ]

</syntaxhighlight>

Destroy All Humans! Path of the Furon

Unlock FPS patch

Author: Whatcookie
Game versions: BLES00467
Patch version: NA
Notes: Totally unlocks FPS and doesn't need any special settings.

<syntaxhighlight lang="yaml"> PPU-65078c652115190ecb64b7ff52bbf1c68696deb6: # Destroy All Humans! Path of the Furon [BLES00467]

 - [ be32, 0x010b9e68, 0x60000000 ]
 - [ be32, 0x010b9ec0, 0x60000000 ]

</syntaxhighlight>

Drakengard 3

60/120 FPS Patch

Author: Whatcookie
Game versions: BLUS31197, BLJM61043, BCAS20311, NPUB31251, NPEB01407
Patch version: 1.0.0
Notes: Need to also change Vblank frequency to 120 for 60FPS or 240 for 120FPS. Going over 120FPS is possible, but you will break physics a bit (lowering jump height) and make it impossible to lock-on to enemies when flying on the dragon.

<syntaxhighlight lang="yaml">

  1. Min frametime is this value / 30
  2. 0.125 / 30 is 4.1ms, so max FPS is 240
  3. This game has a second framerate limiter based
  4. on Vblank, so set Vblank high to raise the framerate
  5. Max FPS is Vblank / 2

PPU-f2f7f7ea0444353884bb715152147c3a29f4e790: # Drakengard 3 [BLUS31197] v1.01

 - [ bef32, 0x008edbcc, 0.12500000 ] # 240 max FPS

PPU-2b393f064786e5895d5a576621deb4c9107a8f0b: # Drakengard 3 [BLUS31197] v1.00

 - [ bef32, 0x008edc5c, 0.12500000 ] # 240 max FPS

PPU-b18834a8f21cd29a091b287a66656a279ccba507: # Drakengard 3 [NPUB31251] v1.00

 - [ bef32, 0x008ecf2c, 0.12500000 ] # 240 max FPS

PPU-9c04f427625a0064282432e4edfefe9e0956c303: # Drakengard 3 [NPUB31251] v1.01

 - [ bef32, 0x008ececc, 0.12500000 ] # 240 max FPS

PPU-e1a44e5d3fb03a37f0445e92ed13abce8d6efdd4: # Drakengard 3 [NPEB01407]

 - [ bef32, 0x008eceec, 0.12500000 ] # 240 max FPS

PPU-a017576369165f3746730724c8ae762ed9bc64d8: # Drag-On Dragoon 3 [BLJM61043] v1.00

 - [ bef32, 0x00939a14, 0.12500000 ] # 240 max FPS

PPU-c09c496514f6dc591434575b04eb7c003826c11d: # Drag-On Dragoon 3 [BLJM61043] v1.04

 - [ bef32, 0x008ed62c, 0.12500000 ] # 240 max FPS

PPU-5eb979631fbbe531db5d20f0622dca5a8b64090e: # Drag-On Dragoon 3 [BCAS20311] v1.02

 - [ bef32, 0x008edc5c, 0.12500000 ] # 240 max FPS

</syntaxhighlight>

Folklore

Unlock FPS patch

Author: Whatcookie
Game versions: BCUS98147, BCES00050
Patch version: NA
Notes: Totally unlocks FPS during gameplay. Sadly the cloth physics go nuts at 60 FPS, despite the gameplay working perfectly. You can however set the fps limit to 50 and the cloth physics will work perfectly! However, note that even without this patch you may want to limit the framerate to 60FPS, else the cutscenes will playback too fast.

<syntaxhighlight lang="yaml"> PPU-66404421d1f8ed7dd0b2898e1d015a44bf273bf8: # Folklore [BCES00050]

 - [ be32, 0x0181118, 0x60000000 ]

PPU-eb05d70d23d075ef6d9c81f7e7cf9bffc98c404c: # Folklore [BCUS98147] v1.00

 - [ be32, 0x0181354, 0x60000000 ]

PPU-9b16663fa1aa1dd62c2c6bfee4f333242dde4171: # Folklore [BCUS98147] v1.10

 - [ be32, 0x01823c0, 0x60000000 ]

</syntaxhighlight>

Genji: Days of the Blade

21:9 Patch

Author: Esppiral
Game versions: BCES00002
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml">

  1. Genji: Days of the Blade [BCES00002]

PPU-4aeb132cdf86d9c4ab20e48ae70cc823e455e05d:

 - [ be32, 0x100FA8B0, 0x4017B9AA ] # 21:9

</syntaxhighlight>

60 FPS Patch

Author: Esppiral
Game versions: BCES00002
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml">

  1. Genji: Days of the Blade [BCES00002]

PPU-4aeb132cdf86d9c4ab20e48ae70cc823e455e05d:

 - [ be32, 0x100FA964, 0x00000000 ] # for 60FPS

</syntaxhighlight>

Gran Turismo HD Concept

21:9 Patch

Author: Unknown RPCS3 Discord member
Game versions: NPEA90002, might work for US/JPN also with adjustments
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml"> PPU-ad3a1ecff65a78f9a8380ff4f12960f499604bf4: #NPEA90002

 - [be32, 0x9BAD3C, 0x3F95C28F]

</syntaxhighlight>

Hatsune Miku: Project DIVA Dreamy Theater

Sign in without connecting a PSP

Author: samyuu, Brolijah, nastys
Game versions: NPJB00047 (v1.00, v1.01)
Patch version: NA
Notes: Makes the game playable by skipping the PSP connection screen. A decrypted save is still required to play the game. The patch can also be used on real hardware.

<syntaxhighlight lang="yaml">

  1. Project DIVA Dreamy Theater

PPU-ddd080c3a59b7d8f7e640b419efccea6972d1e21: # NPJB00047 (v1.00)

 - [be32, 0x66C464, 0x000004B8]

PPU-890a336132e35e8bfb7cbe430ea9b09114915346: # NPJB00047 (v1.01)

 - [be32, 0x66F9B4, 0x00000718]

</syntaxhighlight>

Hatsune Miku: Project Diva F

60 FPS Patch

Author: Brolijah
Game versions: Disc v1.00 (JP, US) and Digital v1.00 (EU, JP, US)
Patch version: NA
Notes: Patch accelerates some game effects by 2x. Does not affect playability.

<syntaxhighlight lang="yaml">

  1. Project DIVA F USA Disc & PSN 1.00

PPU-f3227f57ec001582b253035fd90de77f05ead470:

 - [ be32, 0xBF289C, 0x3F800000 ]
 - [ be16, 0x589496, 0x0001 ]
 - [ be16, 0x5894BA, 0x0001 ]
 - [ be16, 0x589802, 0x0001 ]
 - [ be16, 0x58982A, 0x0001 ]
  1. Project DIVA F EUR PSN 1.00

PPU-c02e3b52e3d75f52f76fb8f0fb5be7ca4d921949:

 - [ be32, 0xBF289C, 0x3F800000 ]
 - [ be16, 0x589496, 0x0001 ]
 - [ be16, 0x5894BA, 0x0001 ]
 - [ be16, 0x589802, 0x0001 ]
 - [ be16, 0x58982A, 0x0001 ]
  1. Project DIVA F JAP Disc & PSN 1.00

PPU-1105af0a4d6a4a1481930c6f3090c476cde06c4c:

 - [ be32, 0xBF22FC, 0x3F800000 ]
 - [ be16, 0x586202, 0x0001 ]
 - [ be16, 0x586226, 0x0001 ]
 - [ be16, 0x58656E, 0x0001 ]
 - [ be16, 0x586596, 0x0001 ]

</syntaxhighlight>

Hatsune Miku: Project Diva F 2nd

60 FPS Patch

Author: Brolijah
Game versions: BLUS31431 (v1.00), BLAS50723 (v1.00), BLJM61079 (v1.00, v1.01, v1.02), NPEB02013 (v1.00), NPJB00435 (v1.00, v1.02), NPHB00671 (v1.00)
Patch version: NA
Notes: Patch accelerates some game effects by 2x. Does not affect playability.

<syntaxhighlight lang="yaml">

  1. Project DIVA F 2nd USA Disc 1.00 (Maybe also PSN?)

PPU-092c43e2bcacccfe3cdc22b0ab8062b91d4e1cf9: # BLUS31431 v1.00

 - [ be32, 0x0423C8, 0x3F800000 ]
 - [ be16, 0x6AF44E, 0x0001 ]
 - [ be16, 0x6AF46E, 0x0001 ]
 - [ be16, 0x6AF492, 0x0001 ]
 - [ be16, 0x6AF4B6, 0x0001 ]
  1. Project DIVA F 2nd EUR PSN 1.00 (Maybe also Disc?)

PPU-67e0e7c9b2a7a340c914a0d078e25aac1047e4d4: # NPEB02013 v1.00

 - [ be32, 0x0423C8, 0x3F800000 ]
 - [ be16, 0x6AF44E, 0x0001 ]
 - [ be16, 0x6AF46E, 0x0001 ]
 - [ be16, 0x6AF492, 0x0001 ]
 - [ be16, 0x6AF4B6, 0x0001 ]
  1. Project DIVA F 2nd ASIA Disc 1.00

PPU-51d336edfa3774f2db83ed030611f462c097c40b: # BLAS50723 v1.00

 - [ be32, 0x042390, 0x3F800000 ]
 - [ be16, 0x6AF0B6, 0x0001 ]
 - [ be16, 0x6AF0D6, 0x0001 ]
 - [ be16, 0x6AF0FA, 0x0001 ]
 - [ be16, 0x6AF11E, 0x0001 ]
  1. Project DIVA F 2nd ASIA PSN 1.00

PPU-c70b15d3f6694af74fa329dd4fc25fe28a59e9cc: # NPHB00671 v1.00

 - [ be32, 0x042390, 0x3F800000 ]
 - [ be16, 0x6AF0B6, 0x0001 ]
 - [ be16, 0x6AF0D6, 0x0001 ]
 - [ be16, 0x6AF0FA, 0x0001 ]
 - [ be16, 0x6AF11E, 0x0001 ]
  1. Project DIVA F 2nd JAP Disc & PSN 1.00

PPU-c3291f5919ca147ac854de10f7436f4ad494233f: # BLJM61079/NPJB00435 v1.00

 - [ be32, 0x041F40, 0x3F800000 ]
 - [ be16, 0x6A48F6, 0x0001 ]
 - [ be16, 0x6A4916, 0x0001 ]
 - [ be16, 0x6A493A, 0x0001 ]
 - [ be16, 0x6A495E, 0x0001 ]
  1. Project DIVA F 2nd JAP Disc 1.01

PPU-058cf39c07fd13f100c1f6dc40a0ead9bf3ad51b: # BLJM61079 v1.01

 - [ be32, 0x041F40, 0x3F800000 ]
 - [ be16, 0x6A48F6, 0x0001 ]
 - [ be16, 0x6A4916, 0x0001 ]
 - [ be16, 0x6A493A, 0x0001 ]
 - [ be16, 0x6A495E, 0x0001 ]
  1. Project DIVA F 2nd JAP Disc 1.02

PPU-8fc9f26ed77cc9237db0e6348dcf9d6c451b6220: # BLJM61079 v1.02

 - [ be32, 0x041F40, 0x3F800000 ]
 - [ be16, 0x6A48F6, 0x0001 ]
 - [ be16, 0x6A4916, 0x0001 ]
 - [ be16, 0x6A493A, 0x0001 ]
 - [ be16, 0x6A495E, 0x0001 ]
  1. Project DIVA F 2nd JAP PSN 1.02

PPU-311fcd98af6adc5e64e6a833eb959f43b0976193: # NPJB00435 v1.02

 - [ be32, 0x041F78, 0x3F800000 ]
 - [ be16, 0x6AB316, 0x0001 ]
 - [ be16, 0x6AB336, 0x0001 ]
 - [ be16, 0x6AB35A, 0x0001 ]
 - [ be16, 0x6AB37E, 0x0001 ]

</syntaxhighlight>

JoJo's Bizarre Adventure: All Star Battle

60 FPS Patch

Author: SutandoTsukai181 on our Discord Server
Game versions: BLUS31405
Patch version: NA
Notes: This patch fixes issues when running the game at 60FPS but you still need to set Vblank frequency to 120 in order to play at 60FPS. You may face issues such as halved input windows, few UI elements not at normal speed, intro quotes stop half-way, projectiles speed is doubled and few graphical glitches (Jotaro not appearing during DIO's GHA).

<syntaxhighlight lang="yaml">

  1. JoJo's Bizarre Adventure: All Star Battle [BLUS31405]

PPU-6875682ab309df32307c5305c43bb132c4e261fa:

 - [ bef32, 0xFF5A08, 0.5 ] # Match timer rate
 - [ bef32, 0xFDB724, 0.5 ] # Animation speed
 - [ bef32, 0xFF8F70, 0.5 ]
 - [ bef32, 0xFEE2F8, 0.5 ] # UI speed

</syntaxhighlight>

JoJo's Bizarre Adventure: Eyes of Heaven

60 FPS Patch

Author: SutandoTsukai181 on our Discord Server
Game versions: BLJS10318 (v1.05)
Patch version: NA
Notes: This patch fixes issues when running the game at 60FPS but you still need to set Vblank frequency to 120 in order to play at 60FPS. You may face issues such as intro quotes stopping half-way and doubled projectiles speed.

<syntaxhighlight lang="yaml">

  1. JoJo's Bizarre Adventure: Eyes of Heaven v1.05 [BLJS10318]

PPU-18cf9a4e8196684ed9ee816f82649561fd1bf182:

 - [ bef32, 0x0236FEF0, 0.5 ] # Match timer rate
 - [ bef32, 0x02370360, 0.5 ]
 - [ bef32, 0x023AED1C, 0.5 ]

</syntaxhighlight>

Kingdom Hearts HD 1.5 ReMIX

21:9 Patch

Author: Esppiral
Game versions: Disc (US)
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml"> PPU-d626d9832ed48d1ff0d8d97e53a4e23df50cfae6:

 - [ be32, 0xEB170, 0x3FAAAAAB ] # VERT+ (21.9)
 - [ be32, 0xEB16C, 0x3FC00000 ] # ZOOM+ (21.9)

</syntaxhighlight>

60 FPS Patch

Author: Esppiral
Game versions: Disc (US)
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml"> PPU-d626d9832ed48d1ff0d8d97e53a4e23df50cfae6:

 - [ be32, 0x20D1016, 0x00000000 ] # 60FPS

</syntaxhighlight>

LittleBigPlanet 2

21:9 Patch

Author: slashiee
Game versions: NPUA80662 (v1.33)
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml">

  1. LittleBigPlanet 2 1.33 [NPUA80662]

lbp2AspectRatio_133_NPUA80662: &lbp2AspectRatio_133_NPUA80662

 - [ bef32, 0x00D9C8EC, 2.37037037 ]

PPU-a74423ca913fc18e46cfe926db1d48e41f9858a9: # NPUA80662

 - [ load, lbp2AspectRatio_133_NPUA80662 ]

</syntaxhighlight>

Lollipop Chainsaw

Unlock FPS Patch

Author: Whatcookie
Game versions: BLUS30917
Patch version: NA
Notes: Max framerate with the patch is Vblank frequency/2. Without the patch the framerate will be limited at around 57 fps, the patch allows you to go past this.

<syntaxhighlight lang="yaml"> PPU-df6f6701742921b9cbb2554983bb4568aae8d659: # Lollipop Chainsaw [BLUS30917]

 - [ be32, 0x00932f2c, 0x60000000 ]
 - [ be32, 0x00932f8c, 0x60000000 ]
 - [ be32, 0x00932f90, 0x60000000 ]

</syntaxhighlight>

Metal Gear Solid 2 HD

21:9 Patch

Author: Esppiral
Game versions: NPEB00685
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml"> PPU-79c9f5ae14fe84851dca7bfe33f58bee3367730b: # METAL GEAR SOLID 2 HD EDITION [NPEB00685]

 - [ be32, 0xDEE1B0, 0x3F100001 ] # INGAME 21:9 AR

</syntaxhighlight>

NieR

FPS Patch

Author: Whatcookie
Game versions: BLUS30481, BLES00826, BLJM60223
Patch version: 2.1
Notes: Updated with a new version that has correct game speed at any framerate, you no longer need to set the Framelimiter to 30 or 60.

<syntaxhighlight lang="yaml"> PPU-13950b2e29e05a115fe317815d3da9d2b2baee65: # BLUS30481, BLES00826

  1. "unlock" framerate
 - [ be32, 0x00f7c3b8, 0x386001f5 ] # li r3, 1f5
 - [ be32, 0x00711b50, 0x489c3ef1 ] # jump to code cave
  1. get mftb
 - [ be32, 0x010d5a40, 0x7ccc42e6 ] # mftb r6             // Move from timebase register (clock)
  1. get mftb delta
 - [ be32, 0x010d5a44, 0x3ca0010e ] # lis r5,0x010e       // load high bits of address (0x010e23c8)
 - [ be32, 0x010d5a48, 0x60a523c8 ] # ori r5,r5,0x23c8    // load low bits of address
 - [ be32, 0x010d5a4c, 0x7c85202a ] # ldx r4,r5,r4        // load previous frames mftb reading
 - [ be32, 0x010d5a50, 0xf8c50000 ] # std r6,0x0(r5)      // store this frames mftb reading
 - [ be32, 0x010d5a54, 0x7cc43050 ] # subf r6,r4,r6       // subtract previous mftb reading from this mftb frames reading
  1. mftb delta to float
 - [ be32, 0x010d5a58, 0xf8c50080 ] # std r6,0x80(r5)     // store mftb delta (to be loaded into FPR)
 - [ be32, 0x010d5a5c, 0xcba50080 ] # lfd f29,0x80(r5)    // load mftb delta into FPR
 - [ be32, 0x010d5a60, 0xffa0ee9c ] # fcfid f29,f29       // convert integer to double
 - [ be32, 0x010d5a64, 0xffa0e818 ] # frsp f29,f29        // round to single precision
  1. mftb delta to seconds
 - [ be32, 0x010d5a68, 0x3c80010d ] # r4,0x10d            // load high bits constants pointer
 - [ be32, 0x010d5a6c, 0x60845a40 ] # ori r4,r4,0x5a40    // load low bits of constants pointer
 - [ be32, 0x010d5a70, 0xc384003c ] # lfs f28,0x3c(r4)    // load timebase frequency
 - [ be32, 0x010d5a74, 0xec3de024 ] # fdivs f1,f29,f28    // divide timebase delta by timebase frequency
  1. return
 - [ be32, 0x010d5a78, 0x4e800020 ] # blr                 // return
  1. constants
 - [ be32, 0x010d5a7c, 0x4c989680 ] # timebase frequency as hexfloat (80mhz)

PPU-f098ee8410599c81c89f90d698340a078dc69a90: # BLJM60223

  1. "unlock" framerate
 - [ be32, 0x00f7cbcc, 0x386001f5 ] # li r3, 1f5
 - [ be32, 0x00711d58, 0x489c48e9 ] # jump to code cave
  1. get mftb
 - [ be32, 0x010d6640, 0x7ccc42e6 ] # mftb r6             // Move from timebase register (clock)
  1. get mftb delta
 - [ be32, 0x010d6644, 0x3ca0010e ] # lis r5,0x010e       // load high bits of address (0x010e23e8)
 - [ be32, 0x010d6648, 0x60a523e8 ] # ori r5,r5,0x23e8    // load low bits of address
 - [ be32, 0x010d664c, 0x7c85202a ] # ldx r4,r5,r4        // load previous frames mftb reading
 - [ be32, 0x010d6650, 0xf8c50000 ] # std r6,0x0(r5)      // store this frames mftb reading
 - [ be32, 0x010d6654, 0x7cc43050 ] # subf r6,r4,r6       // subtract previous mftb reading from this mftb frames reading
  1. mftb delta to float
 - [ be32, 0x010d6658, 0xf8c50080 ] # std r6,0x80(r5)     // store mftb delta (to be loaded into FPR)
 - [ be32, 0x010d665c, 0xcba50080 ] # lfd f29,0x80(r5)    // load mftb delta into FPR
 - [ be32, 0x010d6660, 0xffa0ee9c ] # fcfid f29,f29       // convert integer to double
 - [ be32, 0x010d6664, 0xffa0e818 ] # frsp f29,f29        // round to single precision
  1. mftb delta to seconds
 - [ be32, 0x010d6668, 0x3c80010d ] # r4,0x10d            // load high bits constants pointer
 - [ be32, 0x010d666c, 0x60846640 ] # ori r4,r4,0x6640    // load low bits of constants pointer
 - [ be32, 0x010d6670, 0xc384003c ] # lfs f28,0x3c(r4)    // load timebase frequency
 - [ be32, 0x010d6674, 0xec3de024 ] # fdivs f1,f29,f28    // divide timebase delta by timebase frequency
  1. return
 - [ be32, 0x010d6678, 0x4e800020 ] # blr                 // return
  1. constants
 - [ be32, 0x010d667c, 0x4c989680 ] # timebase frequency as hexfloat (80mhz)

</syntaxhighlight>

21:9 Aspect Ratio

Author: dio
Game versions: BLUS30481, BLES00826
Patch version: 1.0
Notes: HUD Elements will be stretched and misplaced. Users need to enable the "Stretch To Display Area" option in RPCS3 for this patch to work.

<syntaxhighlight lang="yaml"> PPU-13950b2e29e05a115fe317815d3da9d2b2baee65: # BLUS30481, BLES00826

 - [ bef32, 0x01120398, 2.3703704 ] # HUD elements will look wrong & needs stretch to display area

</syntaxhighlight>

Persona 5

60 FPS Patch

Author: TGEnigma
Game versions: Unspecified (Use your executable hash)
Patch version: Update 4/30/2018
Notes: Patch may accelerate some game effects by 2x.

<syntaxhighlight lang="yaml">

  1. Update 4/30/2018: Fix various timings, incl. battle, fix voice cutoff during cutscenes

p5_60FPS: &p5_60FPS

 - [ be32, 0x00010268, 0x9061009C ] # set update rate to 60 -> r3, 0xE0+var_44(r1)
 - [ be32, 0x008FC864, 0x60000000 ] # nop cellGcmSetSecondVFrequency
 - [ bef32, 0x00012484, 0.01666667 ]
 - [ bef32, 0x00045678, 0.01666667 ]
 - [ bef32, 0x000616F0, 0.01666667 ]
 - [ bef32, 0x00073F20, 0.01666667 ]
  1. - [ bef32, 0x000753A0, 0.01666667 ] Doubles camera speed
 - [ bef32, 0x00077E54, 0.01666667 ]
 - [ bef32, 0x00078A70, 0.01666667 ]
 - [ bef32, 0x0007A238, 0.01666667 ]
 - [ bef32, 0x00081864, 0.01666667 ]
 - [ bef32, 0x000885C8, 0.01666667 ]
 - [ bef32, 0x0008C550, 0.01666667 ]
 - [ bef32, 0x0008D6D0, 0.01666667 ]
 - [ bef32, 0x000D058C, 0.01666667 ]
 - [ bef32, 0x000D0B4C, 0.01666667 ]
 - [ bef32, 0x000E4754, 0.01666667 ]
 - [ bef32, 0x000E50F0, 0.01666667 ]
 - [ bef32, 0x000E8190, 0.01666667 ]
 - [ bef32, 0x000F8B78, 0.01666667 ]
 - [ bef32, 0x00101CE8, 0.01666667 ]
 - [ bef32, 0x001E7344, 0.01666667 ]
 - [ bef32, 0x001EB0D4, 0.01666667 ]
 - [ bef32, 0x001EB328, 0.01666667 ]
 - [ bef32, 0x001EB814, 0.01666667 ]
 - [ bef32, 0x001EB940, 0.01666667 ]
 - [ bef32, 0x001EBA04, 0.01666667 ]
 - [ bef32, 0x001EBBA0, 0.01666667 ]
 - [ bef32, 0x001EBCD0, 0.01666667 ]
 - [ bef32, 0x001ECCA0, 0.01666667 ]
 - [ bef32, 0x00234C64, 0.01666667 ]
 - [ bef32, 0x0023F4BC, 0.01666667 ]
 - [ bef32, 0x002400BC, 0.01666667 ]
 - [ bef32, 0x00240BB0, 0.01666667 ]
 - [ bef32, 0x0029231C, 0.01666667 ]
 - [ bef32, 0x00294A70, 0.01666667 ]
 - [ bef32, 0x002952F8, 0.01666667 ]
  1. - [ bef32, 0x002B027C, 0.01666667 ] Makes it impossible to run < 60FPS
 - [ bef32, 0x002B0688, 0.01666667 ]
 - [ bef32, 0x002B6154, 0.01666667 ]
 - [ bef32, 0x002B71F8, 0.01666667 ]
 - [ bef32, 0x002B82C8, 0.01666667 ]
 - [ bef32, 0x002B98F8, 0.01666667 ]
 - [ bef32, 0x002B9F8C, 0.01666667 ]
 - [ bef32, 0x002BA614, 0.01666667 ]
 - [ bef32, 0x002BC84C, 0.01666667 ]
 - [ bef32, 0x002BCD2C, 0.01666667 ]
 - [ bef32, 0x002C550C, 0.01666667 ]
 - [ bef32, 0x002D1328, 0.01666667 ]
  1. - [ bef32, 0x002D230C, 0.01666667 ] Doubles movement speed
 - [ bef32, 0x002D2DDC, 0.01666667 ]
 - [ bef32, 0x002D8A10, 0.01666667 ]
 - [ bef32, 0x002D8A18, 0.01666667 ]
 - [ bef32, 0x002DA46C, 0.01666667 ]
 - [ bef32, 0x002FBB00, 0.01666667 ]
 - [ bef32, 0x0030E258, 0.01666667 ]
 - [ bef32, 0x003181D4, 0.01666667 ]
 - [ bef32, 0x0031CE24, 0.01666667 ]
 - [ bef32, 0x0031DBE0, 0.01666667 ]
 - [ bef32, 0x0033DBD0, 0.01666667 ]
 - [ bef32, 0x00358664, 0.01666667 ]
 - [ bef32, 0x00359020, 0.01666667 ]
 - [ bef32, 0x0035AD10, 0.01666667 ]
 - [ bef32, 0x00364A98, 0.01666667 ]
 - [ bef32, 0x0037429C, 0.01666667 ]
 - [ bef32, 0x00376E7C, 0.01666667 ]
 - [ bef32, 0x00379B08, 0.01666667 ]
 - [ bef32, 0x0037AAAC, 0.01666667 ]
 - [ bef32, 0x0037CF54, 0.01666667 ]
 - [ bef32, 0x0037DB7C, 0.01666667 ]
 - [ bef32, 0x003803F4, 0.01666667 ]
 - [ bef32, 0x00387A80, 0.01666667 ]
 - [ bef32, 0x00388684, 0.01666667 ]
 - [ bef32, 0x003ACBC0, 0.01666667 ]
 - [ bef32, 0x003BDDD0, 0.01666667 ]
 - [ bef32, 0x003E944C, 0.01666667 ]
 - [ bef32, 0x003F35EC, 0.01666667 ]
 - [ bef32, 0x003F6FF4, 0.01666667 ]
 - [ bef32, 0x0058CE18, 0.01666667 ]
 - [ bef32, 0x0058DE64, 0.01666667 ]
 - [ bef32, 0x0058E82C, 0.01666667 ]
 - [ bef32, 0x0058E958, 0.01666667 ]
 - [ bef32, 0x0058F47C, 0.01666667 ]
 - [ bef32, 0x0058FA00, 0.01666667 ]
 - [ bef32, 0x0058FAB4, 0.01666667 ]
 - [ bef32, 0x0058FBE4, 0.01666667 ]
 - [ bef32, 0x0058FD2C, 0.01666667 ]
 - [ bef32, 0x0058FE6C, 0.01666667 ]
 - [ bef32, 0x00590A04, 0.01666667 ]
 - [ bef32, 0x005B6914, 0.01666667 ]
 - [ bef32, 0x005F1C6C, 0.01666667 ]
 - [ bef32, 0x0062076C, 0.01666667 ] # battle related stuff
 - [ bef32, 0x007072BC, 0.01666667 ]
 - [ bef32, 0x00722D7C, 0.01666667 ]
 - [ bef32, 0x0073C840, 0.01666667 ]
 - [ bef32, 0x00772E50, 0.01666667 ]
 - [ bef32, 0x0087B338, 0.01666667 ]
 - [ bef32, 0x00B10110, 0.01666667 ]
 - [ bef32, 0x00B6AA14, 0.01666667 ]
 - [ bef32, 0x00B6AA38, 0.01666667 ]
 - [ bef32, 0x00B70B48, 0.01666667 ]
 - [ bef32, 0x00B70BC8, 0.01666667 ]
 - [ bef32, 0x00B71CF4, 0.01666667 ]
 - [ bef32, 0x00B72F38, 0.01666667 ]
 - [ bef32, 0x00CFF46C, 0.01666667 ]
 - [ bef32, 0x00061700, 0.1666667 ]
 - [ bef32, 0x00069AA4, 0.1666667 ]
 - [ bef32, 0x0007A1EC, 0.1666667 ]
 - [ bef32, 0x00081880, 0.1666667 ]
 - [ bef32, 0x000C8258, 0.1666667 ]
 - [ bef32, 0x000C991C, 0.1666667 ]
 - [ bef32, 0x00101CCC, 0.1666667 ]
 - [ bef32, 0x001E2C44, 0.1666667 ]
 - [ bef32, 0x001E61E8, 0.1666667 ]
 - [ bef32, 0x001E7338, 0.1666667 ]
 - [ bef32, 0x00250C50, 0.1666667 ]
 - [ bef32, 0x00256B20, 0.1666667 ]
 - [ bef32, 0x00292100, 0.1666667 ]
 - [ bef32, 0x00294A60, 0.1666667 ]
 - [ bef32, 0x002952E4, 0.1666667 ]
 - [ bef32, 0x0029FD98, 0.1666667 ]
 - [ bef32, 0x002A1BB8, 0.1666667 ]
 - [ bef32, 0x002A41D0, 0.1666667 ]
 - [ bef32, 0x002A6124, 0.1666667 ]
 - [ bef32, 0x002B4FF0, 0.1666667 ]
 - [ bef32, 0x002B60DC, 0.1666667 ]
 - [ bef32, 0x002B7174, 0.1666667 ]
 - [ bef32, 0x002B82F4, 0.1666667 ]
 - [ bef32, 0x002B8E74, 0.1666667 ]
 - [ bef32, 0x002BA600, 0.1666667 ]
 - [ bef32, 0x002BAB30, 0.1666667 ]
 - [ bef32, 0x002BB4E0, 0.1666667 ]
 - [ bef32, 0x002BB808, 0.1666667 ]
 - [ bef32, 0x002BC368, 0.1666667 ]
 - [ bef32, 0x002BC844, 0.1666667 ]
 - [ bef32, 0x002BD414, 0.1666667 ]
 - [ bef32, 0x002C4F54, 0.1666667 ]
 - [ bef32, 0x002C4FF0, 0.1666667 ]
 - [ bef32, 0x002C69E4, 0.1666667 ]
 - [ bef32, 0x002D4378, 0.1666667 ]
 - [ bef32, 0x002DD968, 0.1666667 ]
 - [ bef32, 0x002DE538, 0.1666667 ]
 - [ bef32, 0x002DEA04, 0.1666667 ]
 - [ bef32, 0x0030D7A0, 0.1666667 ]
 - [ bef32, 0x0030E6BC, 0.1666667 ]
 - [ bef32, 0x003181B8, 0.1666667 ]
 - [ bef32, 0x0031AFE0, 0.1666667 ]
 - [ bef32, 0x0031CE38, 0.1666667 ]
 - [ bef32, 0x0031DBF0, 0.1666667 ]
 - [ bef32, 0x0031EC74, 0.1666667 ]
 - [ bef32, 0x00322FB4, 0.1666667 ]
 - [ bef32, 0x00356560, 0.1666667 ]
 - [ bef32, 0x003586BC, 0.1666667 ]
 - [ bef32, 0x00358F90, 0.1666667 ]
 - [ bef32, 0x0035A380, 0.1666667 ]
 - [ bef32, 0x0035AA3C, 0.1666667 ]
 - [ bef32, 0x00364A9C, 0.1666667 ]
 - [ bef32, 0x003688C8, 0.1666667 ]
 - [ bef32, 0x00368A88, 0.1666667 ]
 - [ bef32, 0x00368E30, 0.1666667 ]
 - [ bef32, 0x00376FD0, 0.1666667 ]
 - [ bef32, 0x00377538, 0.1666667 ]
 - [ bef32, 0x00377CD8, 0.1666667 ]
 - [ bef32, 0x0037C2B0, 0.1666667 ]
 - [ bef32, 0x0037D310, 0.1666667 ]
 - [ bef32, 0x0037D418, 0.1666667 ]
 - [ bef32, 0x0037D5B4, 0.1666667 ]
 - [ bef32, 0x0037DD08, 0.1666667 ]
 - [ bef32, 0x0037DE10, 0.1666667 ]
 - [ bef32, 0x0037DF78, 0.1666667 ]
 - [ bef32, 0x00382F38, 0.1666667 ]
 - [ bef32, 0x003845F0, 0.1666667 ]
 - [ bef32, 0x00387A6C, 0.1666667 ]
 - [ bef32, 0x00398208, 0.1666667 ]
 - [ bef32, 0x00398460, 0.1666667 ]
 - [ bef32, 0x003999F8, 0.1666667 ]
 - [ bef32, 0x003A7C64, 0.1666667 ]
 - [ bef32, 0x003AA418, 0.1666667 ]
 - [ bef32, 0x003AE0E4, 0.1666667 ]
 - [ bef32, 0x003AE3A0, 0.1666667 ]
 - [ bef32, 0x003B25D8, 0.1666667 ]
 - [ bef32, 0x003BC448, 0.1666667 ]
 - [ bef32, 0x003C58C0, 0.1666667 ]
 - [ bef32, 0x003C67B0, 0.1666667 ]
 - [ bef32, 0x003C6D6C, 0.1666667 ]
 - [ bef32, 0x003EBC20, 0.1666667 ]
 - [ bef32, 0x003EE5F0, 0.1666667 ]
 - [ bef32, 0x003F1FE0, 0.1666667 ]
 - [ bef32, 0x003F6FC0, 0.1666667 ]
 - [ bef32, 0x004EB808, 0.1666667 ]
 - [ bef32, 0x0055251C, 0.1666667 ]
 - [ bef32, 0x0055EC48, 0.1666667 ]
 - [ bef32, 0x0055F4A8, 0.1666667 ]
 - [ bef32, 0x0057DC08, 0.1666667 ]
 - [ bef32, 0x0057E498, 0.1666667 ]
 - [ bef32, 0x005C5364, 0.1666667 ]
 - [ bef32, 0x00620714, 0.1666667 ]
 - [ bef32, 0x00635CB4, 0.1666667 ]
 - [ bef32, 0x00642B98, 0.1666667 ]
 - [ bef32, 0x00654EE8, 0.1666667 ]
 - [ bef32, 0x00662B04, 0.1666667 ]
 - [ bef32, 0x006AFF98, 0.1666667 ]
 - [ bef32, 0x006CAA44, 0.1666667 ]
 - [ bef32, 0x006E0224, 0.1666667 ]
 - [ bef32, 0x006E31A0, 0.1666667 ]
 - [ bef32, 0x006FCD3C, 0.1666667 ]
 - [ bef32, 0x00772E54, 0.1666667 ]
 - [ bef32, 0x00797508, 0.1666667 ]
 - [ bef32, 0x00B52E3C, 0.1666667 ]
 - [ bef32, 0x00B6AD00, 0.1666667 ]
 - [ bef32, 0x00B6B71C, 0.1666667 ]
 - [ bef32, 0x00B6E478, 0.1666667 ]
 - [ bef32, 0x00B6E880, 0.1666667 ]
 - [ bef32, 0x00B6E8B8, 0.1666667 ]
 - [ bef32, 0x00B6E8F0, 0.1666667 ]
 - [ bef32, 0x00B6E928, 0.1666667 ]
 - [ bef32, 0x00B6E960, 0.1666667 ]
 - [ bef32, 0x00B6E998, 0.1666667 ]
 - [ bef32, 0x00B6E9D0, 0.1666667 ]
 - [ bef32, 0x00B6EA08, 0.1666667 ]
 - [ bef32, 0x00B6EA40, 0.1666667 ]
 - [ bef32, 0x00B6EA78, 0.1666667 ]
 - [ bef32, 0x00B6EAB0, 0.1666667 ]
 - [ bef32, 0x00B6EAE8, 0.1666667 ]
 - [ bef32, 0x00B6EB20, 0.1666667 ]
 - [ bef32, 0x00B6EB58, 0.1666667 ]
 - [ bef32, 0x00B6EB90, 0.1666667 ]
 - [ bef32, 0x00B6EBC8, 0.1666667 ]
 - [ bef32, 0x00B6EC00, 0.1666667 ]
 - [ bef32, 0x00B6EC38, 0.1666667 ]
 - [ bef32, 0x00B6EC70, 0.1666667 ]
 - [ bef32, 0x00B6ECA8, 0.1666667 ]
 - [ bef32, 0x00B70A54, 0.1666667 ]
 - [ bef32, 0x00B70AF0, 0.1666667 ]
 - [ bef32, 0x00B70AF8, 0.1666667 ]
 - [ bef32, 0x00B70B00, 0.1666667 ]
 - [ bef32, 0x00B70B08, 0.1666667 ]
 - [ bef32, 0x00B70B10, 0.1666667 ]
 - [ bef32, 0x00B70B20, 0.1666667 ]
 - [ bef32, 0x00B70B78, 0.1666667 ]
 - [ bef32, 0x00B70B88, 0.1666667 ]
 - [ bef32, 0x00B70BB4, 0.1666667 ]
 - [ bef32, 0x00B70BC4, 0.1666667 ]
 - [ bef32, 0x00B70F60, 0.1666667 ]
 - [ bef32, 0x00B71BAC, 0.1666667 ]
 - [ bef32, 0x00B71BBC, 0.1666667 ]
 - [ bef32, 0x00B9BD30, 0.1666667 ]
 - [ bef32, 0x00CF96AC, 0.1666667 ]
 - [ bef32, 0x00CFA1E8, 0.1666667 ]
 - [ bef32, 0x00CFA20C, 0.1666667 ]
 - [ bef32, 0x00CFB210, 0.1666667 ]
 - [ bef32, 0x00CFB778, 0.1666667 ]
 - [ bef32, 0x00CFBC30, 0.1666667 ]
 - [ bef32, 0x00CFBCA8, 0.1666667 ]
 - [ bef32, 0x00CFBFD4, 0.1666667 ]
 - [ bef32, 0x00CFC0A8, 0.1666667 ]
 - [ bef32, 0x00CFF3CC, 0.1666667 ]
 - [ bef32, 0x00CFF3D4, 0.1666667 ]
 - [ bef32, 0x00CFF470, 0.1666667 ]
 - [ bef32, 0x00CFF478, 0.1666667 ]
 - [ bef32, 0x00CFF480, 0.1666667 ]
 - [ bef32, 0x00D06840, 0.1666667 ]
 - [ bef32, 0x00D06848, 0.1666667 ]
 - [ be32, 0x000FB71C, 0x3C603C88 ]
 - [ be32, 0x00109B14, 0x3C603C88 ]
 - [ be32, 0x0023FBDC, 0x3CA03C88 ]
 - [ be32, 0x00240620, 0x3CA03C88 ]
 - [ be32, 0x00241258, 0x3C803C88 ]
 - [ be32, 0x003CA4BC, 0x3C603C88 ]
 - [ be32, 0x0087B448, 0x3C603C88 ]
 - [ be32, 0x00589358, 0x60000000 ] # Fix cutscene voice cutoff
  1. Replace the PPU hash by the one from your executable

PPU-b8c34f774adb367761706a7f685d4f8d9d355426:

 - [ load, p5_60FPS ]

</syntaxhighlight>

Disable Blur Filter

Author: TGEnigma, ruipin, kd-11
Game versions: Unspecified (Use your executable hash)
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml"> p5_DisableBlur: &p5_DisableBlur

 - [ be32, 0x00FEE27A, 0x9E001700 ]
 - [ be32, 0x00FEE27E, 0xC801001D ]
 - [ be32, 0x00FEE282, 0x00000000 ]
 - [ be32, 0x00FEE286, 0x00000000 ]
 - [ be32, 0x00FEE28A, 0x1E810100 ]
 - [ be32, 0x00FEE28E, 0xC800001D ]
 - [ be32, 0x00FEE292, 0x00000000 ]
 - [ be32, 0x00FEE296, 0x00000000 ]
  1. Replace the PPU hash by the one from your executable

PPU-d0b4d4ba47cab3d5d8328ade1af75f0ae4861488:

 - [ load, p5_DisableBlur ]

</syntaxhighlight>

Disable Normal Distortion Filter (<=99% Alert & Velvet Room)

Author: TGEnigma, ruipin, kd-11
Game versions: Unspecified (Use your executable hash)
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml"> p5_DisableDistortion: &p5_DisableDistortion

 - [ be32, 0x00FE2E28, 0x9E001700 ]
 - [ be32, 0x00FE2E2C, 0xC801001D ]
 - [ be32, 0x00FE2E30, 0x00000000 ]
 - [ be32, 0x00FE2E34, 0x00000000 ]
 - [ be32, 0x00FE2E38, 0x1E810100 ]
 - [ be32, 0x00FE2E3C, 0xC800001D ]
 - [ be32, 0x00FE2E40, 0x00000000 ]
 - [ be32, 0x00FE2E44, 0x00000000 ]
  1. Replace the PPU hash by the one from your executable

PPU-d0b4d4ba47cab3d5d8328ade1af75f0ae4861488:

 - [ load, p5_DisableDistortion ]

</syntaxhighlight>

Disable Angery Distortion Filter (100% Alert)

Author: TGEnigma, ruipin, kd-11
Game versions: Unspecified (Use your executable hash)
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml"> p5_Disable100PctDistortion: &p5_Disable100PctDistortion

 - [ be32, 0x00FE31CC, 0x9E001700 ]
 - [ be32, 0x00FE31D0, 0xC801001D ]
 - [ be32, 0x00FE31D4, 0x00000000 ]
 - [ be32, 0x00FE31D8, 0x00000000 ]
 - [ be32, 0x00FE31DC, 0x1E810100 ]
 - [ be32, 0x00FE31E0, 0xC800001D ]
 - [ be32, 0x00FE31E4, 0x00000000 ]
 - [ be32, 0x00FE31E8, 0x00000000 ]
  1. Replace the PPU hash by the one from your executable

PPU-d0b4d4ba47cab3d5d8328ade1af75f0ae4861488:

 - [ load, p5_Disable100PctDistortion ]

</syntaxhighlight>

Disable HUD Elements

Author: TGEnigma
Game versions: Unspecified (Use your executable hash)
Patch version: NA
Notes: Elements can disabled separately by adding/removing their respective lines from the patch.

<syntaxhighlight lang="yaml">

  1. Replace the PPU hash by the one from your executable

PPU-d0b4d4ba47cab3d5d8328ade1af75f0ae4861488:

 - [ be32, 0xDE4EC, 0x60000000 ] # mission list
 - [ be32, 0xE83F4, 0x60000000 ] # place pict
 - [ be32, 0xE5920, 0x60000000 ] # check
 - [ be32, 0x69CC4, 0x38600001 ] # alert
 - [ be32, 0x5F678, 0x60000000 ] # date
 - [ be32, 0x38A0D0, 0x4838A186 ] # misc field hud
 - [ be32, 0x28FBA0, 0x38600000 ] # party panel
 - [ be32, 0x28FBA4, 0x4E800020 ] # party panel
 - [ be32, 0xD6B48, 0x60000000 ] # mini map
 - [ be32, 0xD6490, 0x60000000 ] # mini map

</syntaxhighlight>

Red Dead Redemption

21:9 Patch

Author: Esppiral
Game versions: NPEB00833
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml">

  1. Red Dead Redemption [NPEB00833]

PPU-8a18a0314cade28526874128b253acd98863b83d:

 - [ be32, 0x474F24, 0x4017B9AA ] # 21.9 Aspect Ratio
 - [ be32, 0x954B8, 0x4017B9AA ] # 21.9 HUD fix for 21.9 AR

</syntaxhighlight>

Sengoku Basara 4 Sumeragi

Unlock FPS Patch

Author: Whatcookie
Game versions: BLJM61248 (v1.02)
Patch version: NA
Notes: Locked to 60FPS by default, totally kills the frame limiter, doesn't need any special settings.

<syntaxhighlight lang="yaml"> PPU-533d9f764374a5174b4e3c2834e742c4184d7211: # Sengoku Basara 4 Sumeragi [BLJM61248] v1.02

 - [ be32, 0x00e23160, 0x3860001e ] # li  r3, 1e
 - [ be32, 0x00e23178, 0x60000000 ] # nop

</syntaxhighlight>

Shadows of the Damned

Unlock FPS Patch

Author: Whatcookie
Game versions: BLUS30653
Patch version: NA
Notes: Max framerate with the patch is Vblank frequency/2. Without the patch the framerate will be limited at 31 fps.

<syntaxhighlight lang="yaml"> PPU-888f4088d305a6add6f83728bdf917c8245fb72c: # Shadows of the Damned [BLUS30653]

 - [ be32, 0x009e0ce4, 0x60000000 ]
 - [ be32, 0x009e0d64, 0x60000000 ]

</syntaxhighlight>

Sonic Adventure

16:9 Patch

Author: Esppiral
Game versions: NPEB00304
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml">

  1. Sonic Adventure [NPEB00304] Fullscreen 16:9 rendering

PPU-5fc2b4ea8ae9cd7a4247f28dc6af65ca1a6a9fa4:

 - [ be32, 0x05043F18, 0x3F400000 ]
 - [ be32, 0x00909260, 0x009B1604 ]
 - [ be32, 0x0090E5B0, 0x40A00000 ]
 - [ be32, 0x00909270, 0x40400000 ]
 - [ be32, 0x00909274, 0xC0400000 ]
 - [ be32, 0x00909278, 0xBF400000 ]

</syntaxhighlight>

Sonic Unleashed

1280x720 Patch

Author: TGEnigma, slashiee
Game versions: NPUB31204, NPEB01347, BLUS30244, BLES00425, BLJM60112, NPUB90194, NPEB90132, NPJB90162
Patch version: 1.2
Notes: This game originally rendered at 880x720. With this patch, it will render at a resolution of 1280x720.

<syntaxhighlight lang="yaml">

  1. Game: Sonic Unleashed Digital
  2. Subject: Internal 1280x720 render resolution
  3. Authors: TGE

su1280x720_Digital: &su1280x720_Digital

  1. Main backbuffer (880x720)
 - [ be16, 0x013D197A, 1280 ]
 
  1. Other buffers
 - [ be16, 0x0144A53E, 1280 ]
 - [ be16, 0x0144A5F6, 1280 ]
 - [ be16, 0x0144A652, 1280 ]


  1. Sonic Unleashed (NPUB31204)

PPU-88b57d524597bbee38df3a452eb0e86c5e789f73: # NPUB31204

 - [ load, su1280x720_Digital ]
  1. Sonic Unleashed (NPEB01347)

PPU-d0bf7a33f1763725609feaa87e0e4d18ab9e8acd: # NPEB01347

 - [ load, su1280x720_Digital ]
  1. Game: Sonic Unleashed (BLUS30244, BLES00425) v1.00
  2. Subject: Internal 1280x720 render resolution
  3. Authors: TGE, Michele

su1280x720_USEUPhysical: &su1280x720_USEUPhysical

  1. Main backbuffer (880x720)
 - [ be16, 0x00DD85B6, 1280 ]
  1. Other buffers
 - [ be16, 0x013608D6, 1280 ]
 - [ be16, 0x0136098E, 1280 ]
 - [ be16, 0x013609EA, 1280 ]


  1. Sonic Unleashed (BLUS30244, BLES00425) v1.00

PPU-6ebcaf71dc08cd612acb82f8e32738a8693d9347: # BLUS30244, BLES00425 v1.00

 - [ load, su1280x720_USEUPhysical ]
  1. Game: Sonic World Adventure (BLJM60112) v1.00
  2. Subject: Internal 1280x720 render resolution
  3. Authors: TGE, Michele

swa1280x720_BLJM60112: &swa1280x720_BLJM60112

  1. Main backbuffer (880x720)
 - [ be16, 0x00DEC49E, 1280 ]
  1. Other buffers
 - [ be16, 0x013644FE, 1280 ]
 - [ be16, 0x013645B6, 1280 ]
 - [ be16, 0x01364612, 1280 ]


  1. Sonic World Adventure (BLJM60112) v1.00

PPU-fbb2149d0f9ad51398eed59cbd26db5367d6376e: # BLJM60112 v1.00

 - [ load, swa1280x720_BLJM60112 ]
  1. Game: Sonic Unleashed / Sonic World Adventure v1.02
  2. Subject: Internal 1280x720 render resolution
  3. Authors: TGE, Michele

su1280x720_v102: &su1280x720_v102

  1. Main backbuffer (880x720)
 - [ be16, 0x00DFD7C6, 1280 ]
  1. Other buffers
 - [ be16, 0x01371B8E, 1280 ]
 - [ be16, 0x01371C46, 1280 ]
 - [ be16, 0x01371CA2, 1280 ]


  1. Sonic Unleashed (BLUS30244) v1.02

PPU-c2911b4248ca2090819299f90d1a2d37f50fd5a8: # BLUS30244 v1.02

 - [ load, su1280x720_v102 ]
  1. Sonic Unleashed (BLES00425) v1.02

PPU-dfe27b6a57f3fd01f310e402e97a297836b46ceb: # BLES00425 v1.02

 - [ load, su1280x720_v102 ]
  1. Sonic World Adventure (BLJM60112) v1.02

PPU-4b48caf21e1f10d47aa9a20acce8ecd8c055755e: # BLJM60112 v1.02

 - [ load, su1280x720_v102 ]
  1. Game: Sonic Unleashed Demo (NPUB90194)
  2. Subject: Internal 1280x720 render resolution
  3. Authors: TGE, Michele

su1280x720_NPUB90194_Demo: &su1280x720_NPUB90194_Demo

  1. Main backbuffer (880x720)
 - [ be16, 0x013C4B5A, 1280 ]
  1. Other buffers
 - [ be16, 0x01439086, 1280 ]
 - [ be16, 0x0143913E, 1280 ]
 - [ be16, 0x0143919A, 1280 ]


  1. Sonic Unleashed Demo (NPUB90194)

PPU-bd76a566ab62386b90443711206c3f5063b5ab38: # NPUB90194

 - [ load, su1280x720_NPUB90194_Demo ]
  1. Game: Sonic Unleashed Demo (NPEB90132)
  2. Subject: Internal 1280x720 render resolution
  3. Authors: TGE, Michele

su1280x720_NPEB90132_Demo: &su1280x720_NPEB90132_Demo

  1. Main backbuffer (880x720)
 - [ be16, 0x013C4B62, 1280 ]
  1. Other buffers
 - [ be16, 0x0143908E, 1280 ]
 - [ be16, 0x01439146, 1280 ]
 - [ be16, 0x014391A2, 1280 ]
  1. Sonic Unleashed Demo (NPEB90132)

PPU-7d9105cac7fb9c8ebbbd791693c27986b12c98ad: # NPEB90132

 - [ load, su1280x720_NPEB90132_Demo ]
  1. Game: Sonic World Adventure Demo (NPJB90162)
  2. Subject: Internal 1280x720 render resolution
  3. Authors: TGE, Michele

swa1280x720_NPJB90162_Demo: &swa1280x720_NPJB90162_Demo

  1. Main backbuffer (880x720)
 - [ be16, 0x013C4B56, 1280 ]
  1. Other buffers
 - [ be16, 0x01439086, 1280 ]
 - [ be16, 0x0143913E, 1280 ]
 - [ be16, 0x0143919A, 1280 ]
  1. Sonic World Adventure Demo (NPJB90162)

PPU-8bc924308cd72132d78bae70fb9a1fa82af03c19: # NPJB90162

 - [ load, swa1280x720_NPJB90162_Demo ]

</syntaxhighlight>

21:9 Patch

Author: slashiee
Game versions: BLUS30244 (v1.02)
Patch version: NA
Notes: To change this game's aspect ratio, divide the width of your resolution by it's height to get the new value.

<syntaxhighlight lang="yaml">

  1. Game: Sonic Unleashed (BLUS30244) v1.02
  2. Subject: 21:9 Aspect Ratio
  3. Authors: slashiee
  4. Notes: Divide width by height to get the float value.

suAspectRatio_BLUS30244_v102: &suAspectRatio_BLUS30244_v102

  1. Aspect ratio
 - [ bef32, 0x0275DB2C, 2.37037037 ]
  1. Sonic Unleashed (BLUS30244) v1.02

PPU-c2911b4248ca2090819299f90d1a2d37f50fd5a8: # BLUS30244 v1.02

 - [ load, suAspectRatio_BLUS30244_v102 ]

</syntaxhighlight>

Space Channel 5 Part 2

21:9 Patch

Author: Esppiral
Game versions: NPUB30353
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml">

  1. Space Channel 5 Part 2 [NPUB30353]

PPU-2f6778a8e97be84833e47ef273ff10cc2bd6809e:

 - [ be32, 0x5839D4, 0x3F99999A ] # ZOOM+ (21.9)
 - [ be32, 0x57EF84, 0x3F400000 ] # VERT+ (21.9)

</syntaxhighlight>

The Last of Us

Disable inbuilt MLAA

Author: Whatcookie
Game versions: BCES01584 (v1.00, v1.11), BCUS98174 (v1.00, v1.11), BCES01585 (v1.00, v1.11)
Patch version: NA
Notes: Allows for the use of Resolution Scaling in the title and also improves performance. However, please note that this patch causes a few issues such as the subchapter "The Cargo" only showing a blackscreen, the hearing feature no longer working and incorrect bloom effect.

<syntaxhighlight lang="yaml"> PPU-9df60dc1aa5005a0c80e9066e4951dc0471553e6: # BCES01584, BCUS98174, BCES01585 v1.00

 - [ be32, 0x00a51a8c, 0x48000a64 ] # unconditonally branch to disable MLAA

PPU-120fb71f7352d62521c639b0e99f960018c10a56: # BCES01584, BCES01585, BCUS98174 v1.11

 - [ be32, 0x00a80350, 0x48000ab8 ] # unconditonally branch to disable MLAA

</syntaxhighlight>

Disable SPU lighting

Author: ZEROx
Game versions: BCES01584 (v1.00, v1.11), BCUS98174 (v1.00, v1.11), BCES01585 (v1.00, v1.11)
Patch version: NA
Notes: Removes some broken effects and improves performance.

<syntaxhighlight lang="yaml"> PPU-9df60dc1aa5005a0c80e9066e4951dc0471553e6: # BCES01584, BCUS98174, BCES01585 v1.00

 - [ be32, 0x00afeb24, 0x48000010 ] # SPU lighting

PPU-120fb71f7352d62521c639b0e99f960018c10a56: # BCES01584, BCES01585, BCUS98174 v1.11

 - [ be32, 0x00b294ec, 0x48000010 ] # SPU lighting

</syntaxhighlight>

Uncharted 3

Disable inbuilt MLAA

Author: Whatcookie
Game versions: BCES01175 (v1.00, v1.19), BCUS98233 (v1.00, v1.19), BCES01670 (v1.10, v1.19)
Patch version: 1.0
Notes: Allows for the use of Resolution Scaling in the title and also improves performance. Has issues similar to the TLOU MLAA patch.

<syntaxhighlight lang="yaml"> PPU-49c96996b6f3c0b32422375978c41e0c7ed95183: # BCES01175, BCUS98233 1.00

 - [ be32, 0x00720340, 0x480009ac ] # MLAA

PPU-664fb0e4a94c62c15a6474841c202fb2bf80ce16: # BCES01670 1.10

 - [ be32, 0x00728cac, 0x480009ac ] # MLAA

PPU-02a88c3c6cd415b0bb81f1606bc743835881a4ba: # BCES01175, BCUS98233, BCES01670 1.19

 - [ be32, 0x0073a1d8, 0x480009ac ] # MLAA

</syntaxhighlight>

Disable SPU lighting

Author: ZEROx
Game versions: BCES01175 (v1.00, v1.19), BCUS98233 (v1.00, v1.19), BCES01670 (v1.10, v1.19)
Patch version: 1.0
Notes: Removes some broken effects and improves performance.

<syntaxhighlight lang="yaml"> PPU-49c96996b6f3c0b32422375978c41e0c7ed95183: # BCES01175, BCUS98233 1.00

 - [ be32, 0x0074c2f8, 0x48000010 ] # SPU lighting

PPU-664fb0e4a94c62c15a6474841c202fb2bf80ce16: # BCES01670 1.10

 - [ be32, 0x00754da0, 0x48000010 ] # SPU lighting

PPU-02a88c3c6cd415b0bb81f1606bc743835881a4ba: # BCES01175, BCUS98233, BCES01670 1.19

 - [ be32, 0x007653c0, 0x48000010 ] # SPU lighting

</syntaxhighlight>

Unreal Tournament 3

Unlock FPS Patch

Author: Whatcookie
Game versions: BLES00200 (v2.00)
Patch version: NA
Notes: Max framerate with the patch is Vblank frequency/2. Without the patch the framerate will be limited at around 57 fps, the patch allows you to go past this.

<syntaxhighlight lang="yaml"> PPU-d4452078fad5d1d71a6ccb30d8349259749f38e7: # Unreal Tournament 3 [BLES00200] v2.00

 - [ be32, 0x00010c70, 0x60000000 ]
 - [ be32, 0x00010cc8, 0x60000000 ]
 - [ be32, 0x003b79e8, 0x60000000 ]
 - [ be32, 0x003b7a4c, 0x60000000 ]
 - [ be32, 0x003b7a58, 0x60000000 ]

</syntaxhighlight>

WipEout HD

21:9 Patch

Author: Esppiral
Game versions: NPEA00057 (v2.51)
Patch version: NA
Notes: NA

<syntaxhighlight lang="yaml">

  1. WipEout HD [NPEA00057] v2.51

PPU-0e95b58ae209a37060f3388434b59bcce8a708ab:

 - [ be32, 0x7E4190, 0x4017B9AA ] # 21:9 Aspect Ratio
 - [ be32, 0x7EB4A4, 0x4017B9AA ] # Render Fix

</syntaxhighlight>