brad-lin / FreePSXBoot

Exploit to allow loading arbitrary code on the PSX using only a memory card (no game needed)
MIT License
574 stars 44 forks source link

FFVIII Original Copy Not Booting With FreePSXBoot Memory Card in Slot 2 #76

Closed ParagonAlex closed 2 years ago

ParagonAlex commented 2 years ago

I happened upon an odd issue which I have not experienced with any other game. With version 2.0, I tend to keep my FreePSXBoot memory card plugged into slot 2 at all times. However, whenever I try to boot up an original copy of FFVIII, the game boots to a black screen. When I remove the FreePSXBoot memory card, the game boots up with no problems at all.

whitezombie2000 commented 2 years ago

I just tested a retail disc of FFVIII (SLUS-00892) with 6a0e22a0 20211004 Slot 2 on a NTSC SCPH-101 and 8d8cb7e4 20211004 Slot 2 on a NTSC SCPH-5501. No issues booting the game.

Update 1: Ok I was able to reproduce it. I thought you were launching the game with Unirom after the exploit is loaded but you are not. You are just launching the retail disc with the card in memory slot 2 and not actually launching the exploit. Yes after the Licensed by screen it just hangs on a black screen. The work around is to just launch the game with Unirom loaded.

Update 2: I was able reproduce this with retail discs of Suikoden, Final Fantasy VI, Tomb Raider II, Castlevania Chronicles, Crash Team Racing, Saiyuki Journey West, and Legend of Dragoon. I also decided to try with my MemCard PROs since I have two. My previous testing was with regular memory cards. The Memcard PROs do the same thing. Something I noticed with these above games was that the MemCard PROs R and W would light up on the screen just after that Licensed by screen hang, almost as if the game was checking the memcards for something at the point. Suikoden II, Final Fantasy VII, Wild Arms, Wild Arms 2, did not have the R and W light up at that point and booted fine. I tried Final Fantasy IX, Final Fantasy V next, the R and W light up, and the games boot fine. So it's a bit of mystery.

ZXRoxas commented 2 years ago

I was just going to post something about this as well, so I'll tag onto this one. Haven't tested a bunch of games yet, but Crash Bandicoot 1 and Spyro the Dragon 1 exhibit the same behavior; won't boot with the Memory Card in Slot 2 but boot just fine without the Memory Card inserted.

brad-lin commented 2 years ago

@ParagonAlex @whitezombie2000 @SephirothFan I believe I have found the source of the problem. Some games can't handle memory cards returning unexpected values (which is what the freepsxboot BIOS patch simulates) and hang.

I have prepared a new patch which instead makes it look like a timeout. It should behave exactly as if no card was inserted. Could you give me your BIOS versions so I can give you some memory card images and get your feedback?

Here's already an image for SCPH-5501 (remember to unzip it first, Github won't let me attach a mcd file directly).

freepsxboot-unirom-fastload-20220318-bios-3.0-1996-11-18-A-8d8cb7e4-slot2.zip .

whitezombie2000 commented 2 years ago

I tried Tomb Raider II and Crash Team Racing on a NTSC SCPH-5501 with the file you provided, in slot 2 on a MemCard PRO, it still hangs.

ZXRoxas commented 2 years ago

@ParagonAlex @whitezombie2000 @SephirothFan I believe I have found the source of the problem. Some games can't handle memory cards returning unexpected values (which is what the freepsxboot BIOS patch simulates) and hang.

I have prepared a new patch which instead makes it look like a timeout. It should behave exactly as if no card was inserted. Could you give me your BIOS versions so I can give you some memory card images and get your feedback?

Here's already an image for SCPH-5501 (remember to unzip it first, Github won't let me attach a mcd file directly).

freepsxboot-unirom-fastload-20220318-bios-3.0-1996-11-18-A-8d8cb7e4-slot2.zip .

Awesome! I will load this onto my Memory Card and test it soon! I also have a SCPH-7001 that I can test as well for more data points if you want.

brad-lin commented 2 years ago

Awesome! I will load this onto my Memory Card and test it soon! I also have a SCPH-7001 that I can test as well for more data points if you want.

Sure, here's the 7001 version.

freepsxboot-unirom-fastload-20220318-bios-4.1-1997-12-16-A-502224b6-slot2.zip

brad-lin commented 2 years ago

I tried Tomb Raider II and Crash Team Racing on a NTSC SCPH-5501 with the file you provided, in slot 2 on a MemCard PRO, it still hangs.

This seems weird, I have tried them on my 9002 and none of them hangs. Although I used a normal memory card, but it shouldn't change anything. Could you detail your exact setup and the steps to reproduce the issue?

whitezombie2000 commented 2 years ago

PS1 model NTSC SCPH-5501, bios-3.0-1996-11-18-A, put in the memory card in slot 2, put the CD in the PS1, close the LID, hit the power button, games hang, just like in the second post. What other information would you like?

brad-lin commented 2 years ago

PS1 model NTSC SCPH-5501, put in the memory card in slot 2, put the CD in the PS1, close the LID, hit the power button, games hang, just like in the second post. What other information would you like?

So you are running the game with the freepsxboot memcard in slot 2, but without triggering the exploit first? Then that's expected behavior: if you don't trigger the exploit by entering the memory card manager of the PS1 BIOS, then most games will likely hang or crash when they read the memory card, since the exploit will trigger at that moment but in different conditions.

So if you want to keep the memory card in slot 2, you'll need to trigger the exploit even with original games to avoid issues.

whitezombie2000 commented 2 years ago

I believe that is why the OP opened this issue to begin with. They insert the card in slot 2, launch a retail disc, then some games hang. If that is the expected behavior then it should be closed. I mentioned in the second post that they can launch the retail game with Unirom.

brad-lin commented 2 years ago

Ok, I will close it then, feedback is still welcome for the new images on games that used to hang after the exploit was triggered on slot 2.