Dark Souls | |
---|---|
GameID(s) | |
Quick links | Check Compatibility Open Issues Search Google Wikipedia Page |
Configuration
No options that deviate from RPCS3's default settings are recommended for this title.
Known Issues
There are no reported issues with this title.
Special Notes
Patches
Anchors: DS1_US_FPS: &DS1_US_FPS # 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) PPU-3577a3e8efa233c68dedce81a3d0a63dab05dbed: Unlock FPS: Games: "Dark Souls": BLUS30782: [ 01.00 ] Author: Whatcookie 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!) Patch Version: 1.0 Patch: - [ load, *DS1_US_FPS ]