libretro / gpsp

gpSP for libretro.
GNU General Public License v2.0
55 stars 53 forks source link

[PS2] More Games crashing : Gunstar Super Heroes, SSX3, Top Gear rally, many others #153

Open hugorsgarcia opened 3 years ago

hugorsgarcia commented 3 years ago

I found these 3 games are freezing after intro sequences or right at the beginning.

Platform : Playstation 2 GpSP Version : 33f1e25099c64d08723d751c0f8dbf576914d4df

Videos demonstrating the problem :

Gunstar Super Heroes : https://youtu.be/kK7MQQX4FUk Top Gear Rally : https://youtu.be/2vt4svGbnOs SSX 3 : https://youtu.be/Pe59tP2baE4

hugorsgarcia commented 3 years ago

According to compatibility lists I found online of gpsp on PSP these games should work. However I don't know if libretro gpsp has the same compatibility of psp version

hugorsgarcia commented 3 years ago

Here are other games I found crashing and their footages showing the crash. In fact most games I've been testing are crashing

GT Advance 2 Rally Racing : https://youtu.be/pJYPN7QKX9I GT Advance 3 Pro Concept Racing : https://youtu.be/zt0ArkOpGZg Legend Of Zelda A Link To The Past (four swords) : https://youtu.be/V2QzL5myucc Legend Of Zelda The Minish Cap : https://youtu.be/dG8NszMaKg0 Monster Truck Madness : https://youtu.be/DYAQO79ujHI Sega Rally Championship : https://youtu.be/rUJZ8NQ-3-A Smuggler's Run : https://youtu.be/U2VxfvR6Bx0 Tony Hawk's Pro Skater 2 : https://youtu.be/KmNIPVvvoBc Tony Hawk's Pro Skater 3 : https://youtu.be/BUq6nUGN0J0 Tony Hawk's Pro Skater 4 : https://youtu.be/cU8p6NJPntw Tony Hawk's Underground : https://youtu.be/5Vp-rrj3IEY Tony Hawk's Underground 2 : https://youtu.be/RA7ZdfB33Vc

RetroArch : 1.9.9 Platform : Playstation 2 GpSP Version : 33f1e25

hugorsgarcia commented 3 years ago

I saw a new commit and did some more tests. But it didn't change much. Here are some more games crashing :

Big Mutha Truckers : https://youtu.be/ogncqeZ8CG8 Final Fantasy VI Advance : https://youtu.be/GCQeRhNsbDo Golden Sun : https://youtu.be/_RKyUasY5-o Golden Sun The Lost Age : https://youtu.be/7RPRIxgv0ec Grand Theft Auto Advance : https://youtu.be/N9Y-N_JZMVA Kingdom Hearts Chain of Memories : https://youtu.be/DbsNob1VSjM Kirby And The Amazing Mirror : https://youtu.be/Bht80QjtvaM Midnight Club Street Racing : https://youtu.be/AcKikvNLv_4 Need For Speed Carbon : https://youtu.be/efPW6gcfK84 Need For Speed Most Wanted : https://youtu.be/OPam3tRg9SY Need For Speed Underground : https://youtu.be/B5RAa26TnOs Need For Speed Underground 2 : https://youtu.be/B_MecrkZQXY Racing Gears Advance : https://youtu.be/Dzzij0UFZ1s

RetroArch : 1.9.9 Platform : Playstation 2 GpSP Version : 401adca6ae04c38255483772834a997beb6ec25b

leoevc commented 3 years ago

Well, can confirm Gunstar Super Heroes (USA) (CRC32: 7cd86b02) crashing shortly after starting the first stage on gpSP 401adca. Nevertheless, it's behaving kinda normally for me on gpSP 9abb3ef. I did get a re-start back to the BIOS screen, even though I have the 'Boot mode' option set to 'Boot to game' and then it crashed, but this happened one time and hasn't happened again. Not sure how to proceed in order to be helpful.

RetroArch (32 bits): 1.9.7 OS: Android 4.4 Original BIOS: Yes Dynarec: ON

hugorsgarcia commented 3 years ago

r t

Well as I said the vast majority of games I tested are crashing. I selected the games randomly as you can see I have footage of 28 games crashing but I tested 30 random games so only 2 worked fine there are probably a lot more. I suspect these crashes are exclusive on the Playstation 2 it does not happen on windows as far as I've seen. Probably because the lack of memory. Playstation 2 has only 32mb of RAM and CPU caches are very small too. However has tons and tons of memory bandwidth. Because of this PS2 softwares always has rely on streaming data all the time from in and out of memory. But this is not a problem because the PS2's DMAC has the plenty bandwidth available if utilized correctly of course

davidgfnet commented 3 years ago

Yeah it seems like a PS2 issue, since on PSP does not happen (they are both using the same MIPS dynarec, along with Dingux). Can you point me to the latest nightly where this does not happen? (That is, the latest good known to work version). With this I can isolate the issue easily. Will try to reproduce this in pcsx2 since I do not own a PS2 :P

hugorsgarcia commented 3 years ago

Yeah it seems like a PS2 issue, since on PSP does not happen (they are both using the same MIPS dynarec, along with Dingux). Can you point me to the latest nightly where this does not happen? (That is, the latest good known to work version). With this I can isolate the issue easily. Will try to reproduce this in pcsx2 since I do not own a PS2 :P

Well I don't have previous nightly. The last version I have is 1.9.8 from august 23. I don't know about all but I know that back in July when GpSP came out for PS2 one of the games I tested was Zelda the minish cap and was not crashing. Well I will do this : I will go back to 1.9.8 and test some of these same games to see if there is crash, if there is I will keep going back to previous version everytime I find crashes. But this time I won't have time to capture footage. I don't have time to test all 30 again, but I will test those that are known to work on PSP like zelda series and golden sun series

davidgfnet commented 3 years ago

Give it a try to all the published versions (ie. 1.9.8, 1.9.7... and so on). I can later try to provide builds that fall in-between. However there's only 14 days between versions usually so it should be "easy" to find the problematic change. Thanks!

hugorsgarcia commented 3 years ago

Tests with RetroArch 1.9.8

Castlevania : Circle Of The Moon : Crashes Big Mutha Truckers : Crashes Golden Sun : Crashes GT Advance 2 Rally Racing : Working (Crashed in last nightly) GT Advance 3 Pro Concept Racing : Working (Crashed in last nightly Kingdom Hearts Chain of Memories : Crashes Kirby And The Amazing Mirror : crashes Legend Of Zelda A Link To The Past : Working (Crashed in last nightly) Legend Of Zelda The Minish cap : Crashes Need For Speed Underground : Crashes Need For Speed Underground 2 Crashes Sega Rally Championship : Working (Crashed in last nightly) Tony Hawk's Pro Skater 2 : Crashes Tony Hawk's Pro Skater 3 : Crashes Tony Hawk's Pro Skater 4 : Crashes

Tests with RetroArch 1.9.7

Castlevania : Circle Of The Moon : Crashes Big Mutha Truckers : Crashes Golden Sun : Won't boot GT Advance 2 Rally Racing : Working GT Advance 3 Pro Concept Racing : Working Kingdom Hearts Chain of Memories : Crashes Kirby And The Amazing Mirror : Working (Crashes in 1.9.8) Legend Of Zelda A Link To The Past : Working Legend Of Zelda The Minish cap : Crashes Need For Speed Underground : Crashes Need For Speed Underground 2 Crashes Sega Rally Championship : Working Tony Hawk's Pro Skater 2 : Crashes Tony Hawk's Pro Skater 3 : Crashes Tony Hawk's Pro Skater 4 : Crashes

So some games I tested before that crashed are working in 1.9.8. Others works only til 1.9.7 like Kirby. Others never worked since GpSP first release in 1.9.7

hugorsgarcia commented 3 years ago

Note : In 1.9.7 and 1.9.8 Castlevania crashed within less than 10 minutes gameplay. My first test with 33f1e25 it took much longer about half hour

hugorsgarcia commented 3 years ago

nd ha

Update : After commit 9abb3ef9344dfc16a6c8482cccf7642480d4b445 Gunstar Heroes now pays fine the first and second stages. But still crashes after the end of second stage.

davidgfnet commented 3 years ago

Please do not report anything with an older retroarch (anything before 1.9.0... I will just ignore, since it could be fixed after that). Another thing I'd like to mention since I think it confuses a lot of users (and rightfully, since it's complicated): In platforms like PS2, Vita, PSP, 3DS... (known as static-platforms) Retroarch and cores are built together. That means, each core ships retroarch too (that's why cores are so big in these platforms). Therefore it is not possible to use an older RA version with a newer core. When you use a core, you are using the RA version that it ships. If you want to use another combination, you need to build it yourself unfortunately. So when you say you are using RA 1.9.7 but a newer gpsp, you are really using a newer RA, and not 1.9.7. To confirm this, please launch the core and a ROM, then pause, go to the Retroarch Info and look at the version. There you will find the "real" version :) I hope that makes all sense. Thanks!

hugorsgarcia commented 3 years ago

When I say I am using RetroArch 1.9.7 I mean using it with the cores RetroArch was releasead it at the time

hugorsgarcia commented 2 years ago

I tested some games again and some that were at least crashing in-game last time but now are not even booting like Golden Sun. Most are still crashing but very few like Zelda A link to the past and GT advance seems to have been fixed.

007 - NightFire : Crashing Big Mutha Truckers : Won't start Cabela's Big Game Hunter 2005 Adventures : Crashing Castlevania Circle of Moon : Crashing Dark Arena : Crashing Driver 2 Advance : Crashing Drome Racers : Crashing Duke Nukem Advance : Crashing Ecks Vs Sever : Working Final Fantasy VI Advance : Crashing GT Advance 2 Rally Racing : Working GT Advance 3 Pro Concept Racing : Working Golden Sun : Won't start Golden Sun The Lost Age : Crashing Gunstar Super Heroes : Crashing Hot Wheels Stunt Track Challenge : Crashing Ice Nine : Crashing Kingdom Hearts Chain of Memories : Crashing Kirby And The Amazing Mirror : Crashing Legend Of Zelda A Link To The Past : Working Legend Of Zelda The Minish Cap : Crashing Max Payne : Crashing Midnight Club Street Racing : Crashing Monster Truck Madness : Crashing Need For Speed Carbon : Crashing Need For Speed Most Wanted : Crashing Need For Speed Underground 2 : Crashing Need For Speed Underground : Crashing Pac Man World 2 : Crashing Pac Man World : Crashing Payback : Crashing Pokemon FireRed Version : Crashing Pokemon Ruby Version : Crashing Pokemon Sapphire Version : Crashing Racing Gears Advance : Crashing SSX 3 : Crashing Sega Rally Championship : Working Serious Sam Advance : Crashing Smashing Drive : Crashing Star X : Crashing Street Racing Syndicate : Crashing StuntMan : Crashing Tony Hawk's Pro Skater 2 : Working ( but runs very slow ) Tony Hawk's Pro Skater 3 : Crashing Tony Hawk's Pro Skater 4 : Crashing Tony Hawk's Underground : Crashing Tony Hawk's Underground 2 : Crashing Top Gear Rally : Crashing killswitch : Crashing

Tested with GpSP : cce51c948d65dfd8a3e5cfded06cc08257a37490 Platform : Playstation 2 (SCHP-90010) Original BIOS: Yes Dynarec: ON

hugorsgarcia commented 2 years ago

If you are able to reproduce these crashes I mentioned above plz let me know. I spent lots of hours testing these games. Most of them you will have to play for around 3-4 minutes till they crash

hugorsgarcia commented 2 years ago

So I tested again all games that were not working last time and found these 3 games that have been fixed since last time I tested : Midnight Club Street Racing, Pokemon Ruby and Pokemon Sapphire. All the others are still crashing :

007 - NightFire : Crashing Big Mutha Truckers : Crashing Cabela's Big Game Hunter 2005 Adventures : Crashing Castlevania Circle of Moon : Crashing Dark Arena : Crashing Driver 2 Advance : Crashing Drome Racers : Crashing Duke Nukem Advance : Crashing Final Fantasy VI Advance : Crashing Golden Sun : Crashing Golden Sun The Lost Age : Crashing Gunstar Super Heroes : Crashing Hot Wheels Stunt Track Challenge : Crashing Ice Nine : Crashing Kingdom Hearts Chain of Memories : Crashing Kirby And The Amazing Mirror : Crashing Legend Of Zelda The Minish Cap : Crashing Max Payne : Crashing Midnight Club Street Racing : Fixed ! Monster Truck Madness : Crashing Need For Speed Carbon : Crashing Need For Speed Most Wanted : Crashing Need For Speed Underground 2 : Crashing Need For Speed Underground : Crashing Pac Man World 2 : Crashing Pac Man World : Crashing Payback : Crashing Pokemon FireRed Version : Crashing Pokemon Ruby Version : Fixed ! Pokemon Sapphire Version : Fixed ! Racing Gears Advance : Crashing SSX 3 : Crashing Serious Sam Advance : Crashing Smashing Drive : Crashing Star X : Crashing Street Racing Syndicate : Crashing StuntMan : Crashing Tony Hawk's Pro Skater 3 : Crashing Tony Hawk's Pro Skater 4 : Crashing Tony Hawk's Underground : Crashing Tony Hawk's Underground 2 : Crashing Top Gear Rally : Crashing killswitch : Crashing

Now I've tested some new games I've never tested before and found some more that are crashing :

CIMA The Enemy : Crashing Carrera Power Slide : Crashing Cars Mater-National Championship: Crashing Classsic Nes Series Bomberman : Crashing Classsic Nes Series Castlevania : Crashing Classsic Nes Series Donkey Kong : Crashing Classsic Nes Series Dr. Mario : Crashing Classsic Nes Series Excitebike : Crashing Classsic Nes Series Ice Climber : Crashing Classsic Nes Series Metroid : Crashing Classsic Nes Series Pac-Man : Crashing Classsic Nes Series Super Mario Bros : Crashing Classsic Nes Series The Legend of Zelda : Crashing Classsic Nes Series Xevious : Crashing Classsic Nes Series Zelda II: The Adventure of Link : Crashing Crazy Taxi Catch a Ride : Crashing Dragon Ball GT Transformation : Crashing Eck Vs Sever 2 : Crashing FIFA Soccer 06: Crashing FIFA Soccer 07 : Crashing FIFA Soccer 2005 : Crashing FightBox : Crashing Gaunlet Dark Legacy : Crashing Iridion II : Crashing Madden NFL 06 : Crashing Madden NFL 07 : Crashing Mario Tennis Power Tour : Crashing Micro Machines : Crashing R-Type III The Third Lightning: Crashing Rampage Puzzle Attack : Crashing Revenge Of Shinobi : Crashing Spider man 3 : Crashing

Notes : All classic Nes Series are crashing during bios animation. Kingdom Hearts is now playing fine the first cutscene without any crashes that happened before. However the game now still crashes but only after you play the tutorials at the beginning.

GpSP Version : ef39969 RetroArch Git Version : a427de2 Dynarec : YES Original BIOS : YES

davidgfnet commented 2 years ago

Seems like some memory issue, since they are just too many. I will try to find some time tk debug this and fix it.

davidgfnet commented 2 years ago

Also NES classic games are not supported and this wont change. They are hard to emulate and beyond the scope of the project. I think its just easier to play them on a NES emu ;)

hugorsgarcia commented 2 years ago

Seems like some memory issue, since they are just too many. I will try to find some time tk debug this and fix it.

Kingdom Hearts has been surprisingly improved. Considering the rom is just as big as the entire PS2 RAM is suprising it even boots. In my first tests not only it crashed but cutscene was sttutering a lot. Now it plays the cutscene just fine and you can even play the battle tutorials. It will only crash after the tutorials when you start exploring the map.

andymcca commented 1 year ago

@hugogacia360 is this still a problem? Many things have been fixed and rewritten since your initial report, including the ROM buffer routines.

davidgfnet commented 1 year ago

The PS2 port has some sort of issue that makes things hang every now and then. It is odd, given that it shares 99.9% codebase with the PSP port. I might go and debug this once I get some time, now that I have a PS2 at home.

hugorsgarcia commented 1 year ago

Unfortunately, my PS2 just decided to die. I was playing a little after more than 1 year without turning it on then I unplugged the console to go to another room and then it didn't turn on again. And I think these bugs only happened on real Hardware. But I think David said at the time he was trying to reproduce the bugs on PCSX2 but I don't know if he did

@hugogacia360 is this still a problem? Many things have been fixed and rewritten since your initial report, including the ROM buffer routines.

hugorsgarcia commented 1 year ago

The PS2 port has some sort of issue that makes things hang every now and then. It is odd, given that it shares 99.9% codebase with the PSP port. I might go and debug this once I get some time, now that I have a PS2 at home.

You should go to the PS2 Scene discord. There are many people there that knows the ins and outs of PS2 and help with debug. All the guys that makes the PS2 SKD are there https://discord.gg/eFk9ncHX

andymcca commented 1 year ago

@davidgfnet @hugogacia360 , thanks. I do have a PS2 at home myself which I can try things out on if necessary. @davidgfnet one thing I would say is that I see the ROM Buffer is set at 16MB on the PS2 version. Without knowing the background to that, it seems high for a 32MB platform. The one I have worked with, we have set the buffer as low as 2MB without a noticeable performance difference, but was necessary to stop it running out of memory (which would cause a crash).

Would be useful to expose that as a user configurable setting on the RA core options if possible.