Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Preventing a homebrew from running on PPSSPP
10-13-2013, 02:08 PM
Post: #1
Question Preventing a homebrew from running on PPSSPP
Hi,

I'm currently developing a homebrew game which seems to take a lot of capacities from the PSP (maybe due to the OldSchool library?).
While my game runs fine on real hardware, the result is a bit crippled on PPSSPP and kinda ruins the experience I want the players to have with the game when it'll be released. As a result, the best option for me is to prevent the players to play the homebrew on an emulator for now.

On which unsupported features of PPSSPP can I rely on to set this temporary protection?
Find all posts by this user
Quote this message in a reply
10-13-2013, 02:26 PM (This post was last modified: 10-13-2013 02:33 PM by TheDax.)
Post: #2
RE: Preventing a homebrew from running on PPSSPP
Here are two I can think of:

1. I forget how querying flash0 works on the real PSP, but I would think if you look through our flash0's contents and only find the font folder, you're likely running on PPSSPP or JPCSP, since the real PSP undoubtedly requires all of the content to be present to function. That'd probably be the simplest way. Or, for a slight spin on that, check for flash0:/vsh/etc/version.txt. PPSSPP doesn't have a version.txt.

2. Another method could be(well, last time I checked, this was the case): kernel-only functions can be called from userland with no restrictions(I tried with sceKernelFindModuleByName), so check to see if you can call any of those with no error codes, without trying to enter kernel mode.

3.8ghz i7 5930K, 16GB DDR4 RAM, 4GB Nvidia GTX 970, Asus X99 PRO, Windows 7 (SP1) x64
How to ask useful questions: http://support.microsoft.com/kb/555375
I'm not Dark_Alex, nor do I claim to be. Our nicknames are merely coincidence.
Find all posts by this user
Quote this message in a reply
10-13-2013, 02:53 PM (This post was last modified: 10-13-2013 03:03 PM by 240-185.)
Post: #3
RE: Preventing a homebrew from running on PPSSPP
OK, thanks for these suggestions.

UPDATE: In fact, as there is not even a VSH directory, I got a more simple way :

Code:
SceUID check = sceIoDopen("flash0:/vsh/");
if (check < 0)
{
    punishment();
}
Find all posts by this user
Quote this message in a reply
10-13-2013, 03:13 PM
Post: #4
RE: Preventing a homebrew from running on PPSSPP
Hey, whatever works. Tongue

Hopefully your homebrew will work in PPSSPP someday. Smile

3.8ghz i7 5930K, 16GB DDR4 RAM, 4GB Nvidia GTX 970, Asus X99 PRO, Windows 7 (SP1) x64
How to ask useful questions: http://support.microsoft.com/kb/555375
I'm not Dark_Alex, nor do I claim to be. Our nicknames are merely coincidence.
Find all posts by this user
Quote this message in a reply
10-13-2013, 03:24 PM
Post: #5
RE: Preventing a homebrew from running on PPSSPP
Haha, yeah there are a zillion ways to do this, PPSSPP is far from a "transparent" emulator at the moment.
Find all posts by this user
Quote this message in a reply
Post Reply 


Forum Jump: