[Discussion] 60FPS patches for PSP games that run at 30FPS
|
01-06-2016, 03:22 AM
Post: #586
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
(01-05-2016 12:51 AM)Kabuto_Kun Wrote: "Technical" info: Well, forcing games to run at 32-bit color on a real PSP may be a feat, unfortunately. The PSP had 2MB of VRAM, or in other words 2048KB. A 16-bit color buffer requires 272KB. But a 32-bit one requires 544KB. Additionally, you essentially must double buffer on the PSP, meaning you need two of those buffers. So it's actually 555KB vs 1088KB. Even more, most games will require a depth buffer to render properly at all. That costs another 272KB. So you can see that with 32-bit color, you're quickly left with only 2048MB (VRAM) - 272KB (depth) - 1088KB (colors) = 688KB of remaining VRAM. But you say, "it fits, doesn't it? Is that a problem?" But this VRAM has to be used for other things: * Textures * CLUTs * Other buffers (to create bloom effects, or shadows, etc.) So many games may have chosen 32-bit color simply due to free space, not even because of bandwidth. You basically double your remaining VRAM by using 16-bit colors, allowing you to do a lot more other effects. So it may have become a decision of more vibrant colors or better shadows, for example. That being said, it's theoretically possible to relocate textures and CLUTs to regular RAM. There may be a performance penalty, but it might be livable. However, this would definitely mean non-trivial changes to the game's code. So that's why I say it might be an undertaking. In PPSSPP, we represent the color buffers on your modern device, that might even have > 1GB of VRAM. So 32 bit color, or even double the resolution, is not really a problem to fit in there. We don't have to be limited by the VRAM the PSP had. -[Unknown] |
|||
01-06-2016, 10:51 AM
(This post was last modified: 01-06-2016 11:29 AM by Mills.)
Post: #587
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
Testing with the screen mode and the 32,16 bits modes, with homebrew, i found it is very difficult to fill VRAM. Once you fill VRAM, textures will be copied to RAM and the result is 30 FPS instead of 60.
But you have to think, many PSP games are just ports from other systems, and will use very (unnecessarily) big textures, and will fill the 2MB VRAM of the psp 1000, resulting in 30 FPS. I tried LunaMoo's tutorial with Mercury Meltdown (I don't know much about assembly), found sceDisplayWaitVblankStart: Then clicked RA and saw this I guess that "0889D400 beq s0,zero,0889D410" means (according to some search) "jump to given address if zero flag is set", so "jump to sceKernelDcacheWritebackALL if there is a zero, and don't wait for vblank start"... Looks promising, but now what? Once I clicked that function, the game freezed, so i can't test if that will set 60 fps mode or not in the emulator. Thanks in advance EDIT: wow i found it! It set to nop a lot of things and the game was too fast.. I hope I can find the correct settings. What i still don't understand very well is how to use the codes in cwcheat. |
|||
01-07-2016, 04:51 AM
(This post was last modified: 01-07-2016 04:55 AM by VIRGIN KLM.)
Post: #588
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
(01-05-2016 12:51 AM)Kabuto_Kun Wrote: @VIRGIN KLM Done! BTW, I think your best friend with figuring 16bit dithering stuff is Kingdom Hearts Birth By Sleep and it's Final Mix+ version. The game gives you the option to run the game either in 16bit with dithering or 32bit. The only limitation (that is not noted in the manual or ingame) is that this option does not work on Mirage Arena, it will always be 16bit+dithering for obvious reasons. What is intresting is that when you enter Mirage Arena the game unloads and loads a whole different engine dedicated to it. I guess this game will shed light to alot of questions. |
|||
01-17-2016, 09:33 AM
(This post was last modified: 04-12-2017 05:20 PM by vnctdj.)
Post: #589
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
I wanted to post some of this before but I accidentally deleted my post while writing it, let's try again
Warriors Orochi 1, [USA] / [EUR-Eng], ULUS10341.ini / ULES01054.ini Code: _S ULUS-10341 / ULES-01054 Warriors Orochi 2, [USA] / [EUR-Multi2], ULUS10423.ini / ULES01261.ini Code: _S ULUS-10423 / ULES-01261 - The cheat works great in most game modes, but the "Steeple Chase" mode (horse racing) is broken with it. - For both games, the same cheats are working with the mentioned USA/EUR regions (even when theirs EBOOT.BIN's MD5 don't match); maybe the same cheats work for other game releases but I didn't test the others. I found these cheats a long time ago but I just could use them with Cheat Engine because the FPS/speed addresses are located at an offset out of the typical range of CW CHEATs. They are around 0x00010160 (scratchpad?), and CW CHEATS starts at 0x08800000 (see the big difference), so I had to insert some assembly code on some empty area to change the values at runtime - - - @[Unknown] Thank you very much for your explanation, as always. Indeed, I went too far by thinking that forcing 32 bit color on a REAL PSP would be as easy as changing a couple of hex values. I managed to do it with some simple homebrew samples, but even if I identify the equivalent code on a retail game that doesn't mean that a REAL PSP would be able to handle it anyway, or as you say, that a simple change like this won't be enough. @Mills Are you trying with the same Mercury game I already posted? If you want to take a look and learn from it, just go to the address from the cheat I posted using the disassembly and see what I did. _G Archer Maclean's Mercury [EUR] _C0 60 FPS _L 0x20058CCC 0x00000000 20058CCC is the RAM address, but you have to remove the first number (the number 2) because this is the code type identifier for CW CHEAT (2 means that it's a 32bit/4 bytes cheat constant write), it's not part of the address. 00058CCC is the real RAM address, but CW CHEAT starts at offset 0 and PSP/PPSSPP starts at 08800000 (hex), you can read the last part of LunaMoo's tutorial or the one I posted for info on this, so if you want convert the address from PPPSSPP to CW CHEAT, you have to decrease it by 08800000 (hex), and to convert from CW CHEAT to PPSSPP, add 08800000 (hex). 00058CCC + 08800000 = 08858CCC When you go to this address with the dissassembly, it will be a BNE instruction (branch on not equal) that always branch to run the *vblank, which makes the game run at 30 FPS. NOP'ing this address (replace it with zeroes) is enough to perfectly unlock the framerate with this one. Anyway, I tried with the second game Mercury Meltdown, all I got was 40 FPS or something like that, and it needed a speed modifier because the game speed was affected but I didn't found one, bad luck with this one - - - Now, I will explain what I did before about my dithering tests, maybe it's useful. After some binary comparisons of compiled samples from the PSPSDK with the dither effect, when it is enabled in code there's a li a0,0x6 close to the sceGuEnable function, which is a 06000424 in HEX. - 06: According to what I read in the pspgu.h file from PSPSDK, as part of States, #define GU_DITHER (6). - 04: a0 register, I am not sure if this can be one of the other registers (a0=04, a1=05, a2=06 or a3=07). - 24: li instruction, it might be a 34 in some games as I could see with IDA PRO. I replaced those HEX patterns on the DECRYPTED binary of some games. In PPSSPP, enable the option "Dump decrypted EBOOT.BIN on game boot" from developers tools menu, then boot your game and a decrypted BIN file named as the game ID will be at \memstick\PSP\SYSTEM\DUMP. After replacing the HEX patterns, rebuild the ISO of the game (better if you have a backup of the original) with the modified BIN file with the name EBOOT.BIN, on \PSP_GAME\SYSDIR, replacing the original EBOOT.BIN and deleting the BOOT.BIN. I had to rebuild ISOs and test a lot to identify the exact value needed to disable the effect in the games I did managed to disable it, as these changes can't be used as CW CHEATs because the code is executed at the moment a game boots, leaving no time to CW cheats to have any effect. - Puzzle Bobble JAP, ULJM-05011: located at 0xB6B within decrypted BIN with a CRC32 DA0BF8C0, replace 06000424 with 00000000. - Metal Gear Solid Peace Walker USA DEMO, NPUH-90066 or NPHH-00145: located at 0x533E4 within decrypted BIN with a CRC32 62D2AAB5, replace 06000424 with 00000000. - Metal Gear Solid Peace Walker USA, ULUS-10509: located at 0x7AFB8 within decrypted BIN with a CRC32 47BC4CEB, replace 06000424 with 00000000. However, the games look awful in a REAL PSP with the dither effect disabled. If you want to see in PPSSPP how they would look, set "TrueColor = False" in ppsspp.ini file from \memstick\PSP\SYSTEM. I will edit this post later with extra info. goo.gl/kNOhTz : 60FPS master list, Mar. 2017 ; Reddit /u/Kabuto_Kun forums.ppsspp.org/showthread.php?tid=4799&pid=105128#pid105128 : Unlock FPS in PSP games ("easy method") forums.ppsspp.org/showthread.php?tid=4799&pid=123500#pid123500 : Permanently patch a PSP game with CW cheats. |
|||
01-26-2016, 11:36 PM
Post: #590
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
Can I request 60 FPS codes for Tenchi no Mon & Tenchi no Mon 2: Busouden
thanks |
|||
01-27-2016, 12:21 AM
(This post was last modified: 01-27-2016 11:02 AM by Linkinito.)
Post: #591
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
Hi,
I saw LunaMoo's tutorial and Kabuto_Kun's post on page 31 about 60 FPS on Ratchet & Clank Size Matters. After a bit of testing, I found the way to unlock 60 FPS as well, but it runs at double speed, like Kabuto said. Same goes for loading times, which run at 20 FPS. Unlocking 60 FPS make them run at triple speed. The address is 091BC350 in disassembly and nop'ing it. I tried various things but nothing worked to slow down the game. Any thoughts? |
|||
02-02-2016, 11:55 AM
Post: #592
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
And suddenly rude
I In the Japanese, we use the Google translation so sorry at that time that there might be a funny place is to the input of this sentence. I was playing the MGSPW use the PPSSPP, but 20FPS fixed the case for was looking for a very 60fps patch worrisome. But 60fps patch did not exist for the Japan version ... So, if Irassha' is better to have a great technical capabilities that are here I would like you to produce a 60fps patch for Japan. I'm sorry, but you will not be able to give only words of thanks from me, _S NPJH-50045 _G METAL GEAR SOLID PEACE WALKER |
|||
02-03-2016, 09:22 AM
(This post was last modified: 04-26-2016 08:39 PM by Kabuto_Kun.)
Post: #593
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
@JAPAN
I am not sure if this cheat works, please test it and tell us if it worked for you. If it doesn't work, you can upload a SAVESTATE for me of your NPJH-50045 game with the PSP model option as PSP1000 with PPSSPP and I will fix it. Check it on MGS cheats original post - - - - - @Linkinito Yeah, I have only managed to get 60 FPS at double speed with Ratchet & Clank Size Matters, the same for Secret Agent Clank and Jak and Daxter The Lost Frontier (they all use the same engine AFAIK), and after more tests I got double speed with Daxter too (I think it uses an engine similar to the others, maybe the first version). This is so sad, if someone finds a way to fix at least one of those games, it would be easy to unlock the others. - - - - - More updates: - I unlocked YS Seven with the "easy" method and used a speed modifier to adjust the gamespeed, but some things are still running at double speed (like game time and menus). Using a different approach, which is adjusting how many frames get rendered, I can speed up the game speed perfectly, but can not make it slower as it uses an 1 (int) as the original value, and a 0 stops the game. - Fate/Extra can be unlocked with the "easy" method, but runs at double speed. I have to search for a gamespeed modifier. - I've sort of confirmed that FF Type 0/Reishiki uses an updated version of the FF Crisis Core engine. Using the 60 FPS hack for Type 0 posted by LunaMoo as a base, I finally made some progress with Crisis Core: can be run at double speed and porting other values may change the game speed. I tested a gamespeed cheat posted by VIRGIN KLM here, but I could not make it work. I'll keep trying... goo.gl/kNOhTz : 60FPS master list, Mar. 2017 ; Reddit /u/Kabuto_Kun forums.ppsspp.org/showthread.php?tid=4799&pid=105128#pid105128 : Unlock FPS in PSP games ("easy method") forums.ppsspp.org/showthread.php?tid=4799&pid=123500#pid123500 : Permanently patch a PSP game with CW cheats. |
|||
02-03-2016, 11:21 AM
Post: #594
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
@Kabuto_Kun
Thank you very much. Now, please wait a little bit more because we are verification. You do not have only words of thanks to. Thank you very much. |
|||
02-03-2016, 01:22 PM
Post: #595
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
Pls try 60fps for Naruto Shippuden Ultimate Impact
|
|||
02-03-2016, 02:07 PM
(This post was last modified: 02-03-2016 02:08 PM by JAPAN.)
Post: #596
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
@kabuto_kun
Reported so we will . In my PC specs are ... very embarrassing to 60fps could not be realized not enough . So 60fps asked to cooperate with the person who owns the specifications of the PC out , was to validate . So I raised the problem is , is that the radio of the timing shift , would soon end . Is this Will such that there is no way ? Will specifications ? Other , I worked at 60fps without any noticeable problem . This time , thank you very much me to respond immediately though it was short notice . Since English is not good , would use the Google translation , it may have been a rude representation . I'm really sorry. And , thank you . @kabuto_kun Reported so we will . In my PC specs are ... very embarrassing to 60fps could not be realized not enough . So 60fps asked to cooperate with the person who owns the specifications of the PC out , was to validate . So I raised the problem is , is that the radio of the timing shift , would soon end . Is this Will such that there is no way ? Will specifications ? Other , I worked at 60fps without any noticeable problem . This time , thank you very much me to respond immediately though it was short notice . Since English is not good , would use the Google translation , it may have been a rude representation I'm really sorry. And , thank you . |
|||
02-05-2016, 09:33 AM
Post: #597
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
I found a 60 FPS cheat for Monster Hunter Portable 2nd G in another thread (can't link if for some reason).
Code: _C0 60 fps Since 2nd G is the japanese version of Monster Hunter Freedom Unite it should be possible to make that game run at 60 fps as well. I've tested the patch with 2nd G and it works somewhat perfectly. Cutscenes and gathering is tied to the framerate though. Someone in this thread mentioned that you can chance the region of the cheat by doing an offset of the addresses. How is this done exactly? Thanks for your help. |
|||
02-06-2016, 09:40 AM
Post: #598
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
Someone tested the simpsons game? This will look a lot better at 60 FPS
|
|||
02-06-2016, 01:52 PM
Post: #599
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
(02-05-2016 09:33 AM)LordArrig Wrote: Someone in this thread mentioned that you can chance the region of the cheat by doing an offset of the addresses. I said it. It will not work for the above cheat. The memory range is too extensive for such method to work, the offset will not be constant in such distant addresses. |
|||
02-10-2016, 03:55 PM
Post: #600
|
|||
|
|||
RE: [Discussion] 60FPS patches for PSP games that run at 30FPS
I tried Me & My Katamari U . unlocked 60 fps at 0882F8D4 in PPSSPP and the game runs at 2x speed.
It also has some 60 fps menus. But I could not find the function to unlock them properly. |
|||
« Next Oldest | Next Newest »
|