Compare commits

...

19 Commits
v1.4 ... master

Author SHA1 Message Date
random() f0c0fadd27 Update README.md 2023-11-10 07:25:37 +00:00
random() 5e4077f119 Update README.md 2023-10-31 04:53:16 +00:00
random() 33e88b4c67 Update README.md 2023-10-31 04:39:09 +00:00
random() 95392076e0 Update LICENSE 2023-10-31 04:34:15 +00:00
SilicaAndPina 4fe45136d4 README.md edited online with Bitbucket 2020-04-18 23:39:49 +00:00
SilicaAndPina c10076e0d1 README.md edited online with Bitbucket 2020-04-18 23:39:11 +00:00
SilicaAndPina 66ec55606e README.md edited online with Bitbucket 2020-04-18 23:38:18 +00:00
SilicaAndPina 3a238c4492 README.md edited online with Bitbucket 2020-04-18 23:37:37 +00:00
SilicaAndPina b7e5595058 Fix Unity 2020-04-06 18:29:28 +12:00
SilicaAndPina f9c0272e81 Patch out project_name check. 2020-04-05 18:15:06 +12:00
SilicaAndPina 950e17fa13 README.md edited online with Bitbucket 2019-05-19 04:39:28 +00:00
SilicaAndPina a3a5e0647c README.md edited online with Bitbucket 2019-04-26 09:57:12 +00:00
SilicaAndPina 5681679d79 README.md edited online with Bitbucket 2019-04-26 09:54:37 +00:00
SilicaAndPina f7d307ba3d README.md edited online with Bitbucket 2019-04-26 09:51:07 +00:00
SilicaAndPina 884868f487 README.md edited online with Bitbucket 2019-04-26 09:44:26 +00:00
SilicaAndPina 12362e1668 README.md edited online with Bitbucket 2019-04-26 09:39:17 +00:00
SilicaAndPina d94da651a0 README.md edited online with Bitbucket 2019-04-26 09:38:29 +00:00
SilicaAndPina 691ccd6697 README.md edited online with Bitbucket 2019-04-26 09:37:35 +00:00
SilicaAndPina b8d972dda2 README.md edited online with Bitbucket 2019-04-26 09:27:53 +00:00
3 changed files with 105 additions and 45 deletions

View File

@ -1,6 +1,6 @@
MIT License
Copyright (c) 2019 Silica
Copyright (c) 2019 Li
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

View File

@ -141,8 +141,6 @@ int sceAppUtilCacheMount_patched(){
return ret;
}
int ret0 (int *args)
{
return 0;
@ -167,27 +165,103 @@ SceUID sceKernelLoadStartModule_patched(char *path, SceSize args, void *argp, in
sceClibPrintf("SecurityCritical: %x\n",SecurityCritical);
}
if(strstr(path,"libmono_bridge.suprx")) //PSM
{
/*
int SceLibMonoBridge_70493FB9
(char *sdk_version,undefined4 param_2,uint param_3,uint param_4,char *project_name,
undefined4 param_6,void *output)
find offset by following the 5th paramater, into 3 different functions.
you'll come accross a strcmp, lower down is a if(*unk_whatever = 1)
thats the jump you wnat to patch.
*/
tai_module_info_t info;
info.size = sizeof(tai_module_info_t);
taiGetModuleInfo("SceLibMonoBridge", &info);
uint16_t patched_instruction = 0xBF00; //ARM9 "NO OPERATION"
int ret = 0;
sceClibPrintf("%s: nid 0x%x\n",path,info.module_nid);
switch(info.module_nid)
{
case 0x28D9013B: //SDK 2.00
ret = taiInjectData(info.modid, 0, 0x132F8, &patched_instruction, 0x2);
sceClibPrintf("TaiInjectData (sdk2.00) %x\n",ret);
break;
case 0x88B67542: //SDK 1.21
ret = taiInjectData(info.modid, 0, 0x12e48, &patched_instruction, 0x2);
sceClibPrintf("TaiInjectData (sdk1.21) %x\n",ret);
break;
}
}
if(strstr(path,"libpsm.suprx")) //PSM
{
PeekPositive = taiHookFunctionImport(&PeekPositive_ref,
"SceLibPsm",
TAI_ANY_LIBRARY,
0xA9C3CED6, // sceCtrlPeekBufferPositive
sceCtrlPeekBufferPositive_patched);
sceClibPrintf("PeekPositive: %x\n",PeekPositive);
PeekPositive = taiHookFunctionImport(&PeekPositive_ref,
"SceLibPsm",
TAI_ANY_LIBRARY,
0xA9C3CED6, // sceCtrlPeekBufferPositive
sceCtrlPeekBufferPositive_patched);
sceClibPrintf("PeekPositive: %x\n",PeekPositive);
}
if(strstr(path,"libScePsmEdata.suprx")) //PSM Unity
{
/*
finding offsets for project_name
look at int ScePsmEdata_2EC7439C(int param_1,undefined4 param_2,uint param_3,uint param_4,char *project_name)
find offset by following the 5th paramater, into 3 different functions.
you'll come accross a strcmp, lower down is a if(*unk_whatever = 1)
thats the jump you wnat to patch.
for UnityCheckDrm look for sceIoGetStat,
look at all cross references and the function
that contiains one that has arg1 "cache0:/_System"
is UnityCheckDrm().
*/
tai_module_info_t info;
info.size = sizeof(tai_module_info_t);
taiGetModuleInfo("ScePsmEdata", &info);
uint16_t patched_instruction = 0xBF00; //ARM9 "NO OPERATION"
int ret = 0;
sceClibPrintf("%s: nid 0x%x\n",path,info.module_nid);
switch(info.module_nid)
{
case 0xB4657632: //Unity 4.3.7.0
ret = taiInjectData(info.modid, 0, 0x3b50, &patched_instruction, 0x2); //allow for all project_name
sceClibPrintf("TaiInjectData (unity4.3.7.0) %x\n",ret);
UnityCheckDrm = taiHookFunctionOffset(&UnityCheckDrm_ref,
ret,
info.modid,
0,
0x5a62, //PsmDrmBootCheck
1,
ret0);
sceClibPrintf("UnityCheckDrm: %x\n",UnityCheckDrm);
break;
case 0x21AE6754: //Unity Base
ret = taiInjectData(info.modid, 0, 0x10f9c, &patched_instruction, 0x2); //allow for all project_name
sceClibPrintf("TaiInjectData (unity base) %x\n",ret);
UnityCheckDrm = taiHookFunctionOffset(&UnityCheckDrm_ref,
info.modid,
0,
0x12eb2, //PsmDrmBootCheck
1,
ret0);
sceClibPrintf("UnityCheckDrm: %x\n",UnityCheckDrm);
break;
}
}
return ret;
@ -258,10 +332,13 @@ void module_start(SceSize argc, const void *args) {
int module_stop(SceSize argc, const void *args) {
// release hooks
if (CacheMounted >= 0) taiHookRelease(CacheMounted, CacheMounted_ref);
if (SuiteCheckDrm >= 0) taiHookRelease(SuiteCheckDrm, SuiteCheckDrm_ref);
if (LoadModuleHook >= 0) taiHookRelease(LoadModuleHook, LoadModuleHook_ref);
if (UnityCheckDrm >= 0) taiHookRelease(UnityCheckDrm, UnityCheckDrm_ref);
if (SecurityCritical >= 0) taiHookRelease(SecurityCritical, SecurityCritical_ref);
if (PeekPositive >= 0) taiHookRelease(PeekPositive, PeekPositive_ref);
if (LoadModuleHook >= 0) taiHookRelease(LoadModuleHook, LoadModuleHook_ref);
return SCE_KERNEL_STOP_SUCCESS;
}

View File

@ -1,46 +1,29 @@
# MakePsmGreatAgain
Modifications to the PSM Developer applications
Re-Enables USB Serial Mode, and gives PSM Developer Applications infinite publishing licenses
Features:
+ Never-Ending Publishing License. - While MakePsmGreatAgain is active, you dont have to "Refresh License" with PSM+
+ USB Serial Mode Re-Enabled - Can connect PC to Development Assistant via USB
+ PSMPlus Publishing Keys - Apps signed with PSMPlus Keys will work all consoles with MakePsmGreatAgain
+ Exit with Start+Up - While a PSM app is running, You can press Start+Up to return back to Developer Assistant
+ All applications are "SecurityCritcal" - Enables ALL .NET functions, including ones marked 'unsafe'
+ app.info "project_name" check patched (runtime only) - Enables games to run regardless of if "project_name" is set to "*"
(Note: As PSM Dev is revoked in f00d you need reF00D/0syscall6 or rePatch with a compati pack in order to run it)
To install plugin:
# Installation
```
*PCSI00007
ux0:/tai/MakePsmGreatAgain.suprx
ur0:/tai/MakePsmGreatAgain-v1.5.suprx
*PCSI00009
ux0:/tai/MakePsmGreatAgain.suprx
ur0:/tai/MakePsmGreatAgain-v1.5.suprx
```
(use ur0 if prefered)
[How do i install PSM Dev?](https://pastebin.com/8mGXtC57)
Where gonna Build a wall and make Sony pay for it!
Probably with he money they stole from us
by deleting our PSM Purchases
# V1.4 -
Switched to Userland Plugin (.suprx)
Now enables "SecurityCritical" on all apps in PSM Dev (FOR ULTIMATE C# CAPIBILITYS!)
You can now use Start + UP to exit back to the PSM Developer application.
# FAQ
Download: https://bitbucket.org/SilicaAndPina/makepsmgreatagain/downloads/MakePsmGreatAgain.suprx
[How do i install PSM Dev?](https://www.youtube.com/watch?v=CuxaVTyAVn8)
[How do i install the PSM SDK?](https://www.youtube.com/watch?v=KoZ1xVNTjUc)
# V1.3 -
Now works with reF00D plugin by dots_tb (as well as repatch)
Download: https://bitbucket.org/SilicaAndPina/makepsmgreatagain/downloads/MakePsmGreatAgain-v1.3.skprx
# v1.2 -
Infinite Publishing License for PSM Dev for Unity (PCSI00009)
PSM Dev for Unity, app/game launching acturally working now (fixed bugs that dots-tb didnt want to fix)
Download: https://bitbucket.org/SilicaAndPina/makepsmgreatagain/downloads/MakePsmGreatAgain-v1.2.skprx
# v1.0 -
Automatically creates publishing license (if not allready created) at PSM Dev bootup (still need psm+ for development!)
Re-Enable's SceUsbSerial for ALL applications (yes, if u want to use it on your own homebrew, YOU CAN!)
Spoofs SecureTick to allways be within the valid period for the PsmDrmBoot and KConsole Cache (Publsihing License will never expire)
Note: Only PSM Dev Suite supported in v1.0
Download: https://bitbucket.org/SilicaAndPina/makepsmgreatagain/downloads/MakePsmGreatAgain.skprx